You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Dan Carda <da...@twtelecom.com> on 2012/05/16 22:30:27 UTC

JBoss 5.1 to 6.1 Migration Problem...

Hi there!
I'm currently in the middle of a JBoss 5.1 to 6.1 migration and it's not
going well.  I know the problem was caused by ME, but I'm hopeful someone
will go, "oh yeah, you need to do <this>".

Currently, I'm using the 0.10 version.  This version worked fine under JBoss
5.1.  So well in fact this location standardized on it.  

The message I'm getting from JBoss is:

14:21:40,977 INFO  [org.jboss.ejb3.EJBContainer] STARTED EJB:
com.twtelecom.esbc.sip.mdb3.qpid.resourceconfig.ResourceConfigListenerMDB
ejbName: ResourceConfigListenerMDB
14:21:41,005 ERROR
[org.jboss.kernel.plugins.dependency.AbstractKernelController] Error
installing to Start:
name=jboss.j2ee:ear=sip_application-ear-1.0-SNAPSHOT.ear,jar=sip_application-ejb-1.0-SNAPSHOT.jar,name=ResourceConfigListenerMDB,service=EJB3
state=Create: org.jboss.deployers.spi.DeploymentException: Error for
ActivationSpec class org.hornetq.ra.inflow.HornetQActivationSpec as JavaBean
Caused by: java.beans.IntrospectionException: No property found for:
connectionURL on JavaBean:
org.hornetq.ra.inflow.HornetQActivationSpec(ra=null
destination=jms/QpidNowTopic destinationType=javax.jms.Topic
selector=SipMessageType = 'ResourceConfigMsg' ack=Auto-acknowledge
durable=false clientID=null user=null maxSession=1)

In my EJB, this I define this:  

@MessageDriven ( activationConfig = { @ActivationConfigProperty (
propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge" ) ,
@ActivationConfigProperty ( propertyName = "connectionURL", propertyValue =
"amqp://guest:guest@clientid/test?brokerlist='tcp://mrgdalprdn4:5672'" ) ,
@ActivationConfigProperty ( propertyName = "destination", propertyValue =
"jms/QpidNowTopic" ) , @ActivationConfigProperty ( propertyName =
"destinationType", propertyValue = "javax.jms.Topic" ) ,
@ActivationConfigProperty ( propertyName = "maxSession", propertyValue = "1"
) , @ActivationConfigProperty ( propertyName = "messageSelector",
propertyValue = "SipMessageType = 'ResourceConfigMsg'" ) ,
@ActivationConfigProperty ( propertyName = "useLocalTx", propertyValue =
"false" ) } ) @TransactionAttribute( TransactionAttributeType.NOT_SUPPORTED
) public class SystemConfigListenerMDB extends ResourceConfigLogic
implements MessageListener{

Any idea what I'm doing wrong???

Thanks!
Daniel Carda
Time Warner Telecom



   
-- 
View this message in context: http://old.nabble.com/JBoss-5.1-to-6.1-Migration-Problem...-tp33860736p33860736.html
Sent from the Qpid Developers mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: JBoss 5.1 to 6.1 Migration Problem...

Posted by "Weston M. Price" <wp...@redhat.com>.
For clarification, I should not have said EAP, that should simply read JBoss 5 and JBoss 6 where appropriate. 

Regards,

Weston
On May 16, 2012, at 4:47 PM, Weston M. Price wrote:

> Hi Dan,
> 	It looks like your trying to mix JMS providers. The stacktrace is telling you that you are attempting to use the HornetQ activation spec for your MDB. HornetQ is the default JMS provider for EAP and as such, if you don't tell EAP you want to use another messaging provider then it assumes the default. I assume you are trying to use Qpid. So, you have two choices to define the ResourceAdapter you need to use. You can either use the EAP specific annotation 
> 
> org.jboss.ejb3.annotation.ResourceAdapter
> 
> This annotation can usually be found in the jboss-ejb3-ext-api-impl.jar which is generally in the JBOSS_HOME/client directory. This is class level annotation, so simply put this at the top of your MDB as such:
> 
> @ResourceAdapter("qpid-ra-<version>.rar")
> 
> where <version> corresponds to your version of the Qpid JCA rar file you are using.
> 
> 
> If you don't want to use the annotation, you can use the jboss.xml deployment descriptor mechanism. In your ejb-jar/META-INF directory, if you don't already have one,  create the jboss.xml file. it should look something like:
> 
> <jboss
>        xmlns="http://www.jboss.com/xml/ns/javaee"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
>                            http://www.jboss.org/j2ee/schema/jboss_5_0.xsd"
>        version="3.0">
> 
>    <enterprise-beans>
>        <message-driven>
>           <ejb-name>ResourceConfigListenerMDB</ejb-name>
>           <resource-adapter-name>qpid-ra-<version>.rar</resource-adapter-name>
>        </message-driven>
>   </enterprise-beans>
> </jboss>
> 
> There were very few infrastructure changes between EAP 5 and EAP 6 so looking at your problem, one of three things may have happened:
> 
> 1) The annotation mentioned above may have been removed
> 2) The descriptor mentioned above may have been removed
> 3) The original EAP 5.x environment replaced HornetQ with Qpid as the default JMS provider. If this is the case, then you will have to migrate this configuration over the EAP 6. This may have already been done for you before, so you will have to find out if this is indeed the case, and just replace HornetQ with Qpid on the new instance.
> 
> 
> Note, if it is actually #3, I highly recommend using approach #1 or #2. Either way will avoid a lot of work on your part and is much easier to migrate if you have to do this again. 
> 
> Regards,
> 
> Weston
> 
> On May 16, 2012, at 4:30 PM, Dan Carda wrote:
> 
>> 
>> Hi there!
>> I'm currently in the middle of a JBoss 5.1 to 6.1 migration and it's not
>> going well.  I know the problem was caused by ME, but I'm hopeful someone
>> will go, "oh yeah, you need to do <this>".
>> 
>> Currently, I'm using the 0.10 version.  This version worked fine under JBoss
>> 5.1.  So well in fact this location standardized on it.  
>> 
>> The message I'm getting from JBoss is:
>> 
>> 14:21:40,977 INFO  [org.jboss.ejb3.EJBContainer] STARTED EJB:
>> com.twtelecom.esbc.sip.mdb3.qpid.resourceconfig.ResourceConfigListenerMDB
>> ejbName: ResourceConfigListenerMDB
>> 14:21:41,005 ERROR
>> [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error
>> installing to Start:
>> name=jboss.j2ee:ear=sip_application-ear-1.0-SNAPSHOT.ear,jar=sip_application-ejb-1.0-SNAPSHOT.jar,name=ResourceConfigListenerMDB,service=EJB3
>> state=Create: org.jboss.deployers.spi.DeploymentException: Error for
>> ActivationSpec class org.hornetq.ra.inflow.HornetQActivationSpec as JavaBean
>> Caused by: java.beans.IntrospectionException: No property found for:
>> connectionURL on JavaBean:
>> org.hornetq.ra.inflow.HornetQActivationSpec(ra=null
>> destination=jms/QpidNowTopic destinationType=javax.jms.Topic
>> selector=SipMessageType = 'ResourceConfigMsg' ack=Auto-acknowledge
>> durable=false clientID=null user=null maxSession=1)
>> 
>> In my EJB, this I define this:  
>> 
>> @MessageDriven ( activationConfig = { @ActivationConfigProperty (
>> propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge" ) ,
>> @ActivationConfigProperty ( propertyName = "connectionURL", propertyValue =
>> "amqp://guest:guest@clientid/test?brokerlist='tcp://mrgdalprdn4:5672'" ) ,
>> @ActivationConfigProperty ( propertyName = "destination", propertyValue =
>> "jms/QpidNowTopic" ) , @ActivationConfigProperty ( propertyName =
>> "destinationType", propertyValue = "javax.jms.Topic" ) ,
>> @ActivationConfigProperty ( propertyName = "maxSession", propertyValue = "1"
>> ) , @ActivationConfigProperty ( propertyName = "messageSelector",
>> propertyValue = "SipMessageType = 'ResourceConfigMsg'" ) ,
>> @ActivationConfigProperty ( propertyName = "useLocalTx", propertyValue =
>> "false" ) } ) @TransactionAttribute( TransactionAttributeType.NOT_SUPPORTED
>> ) public class SystemConfigListenerMDB extends ResourceConfigLogic
>> implements MessageListener{
>> 
>> Any idea what I'm doing wrong???
>> 
>> Thanks!
>> Daniel Carda
>> Time Warner Telecom
>> 
>> 
>> 
>> 
>> -- 
>> View this message in context: http://old.nabble.com/JBoss-5.1-to-6.1-Migration-Problem...-tp33860736p33860736.html
>> Sent from the Qpid Developers mailing list archive at Nabble.com.
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> For additional commands, e-mail: dev-help@qpid.apache.org
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: JBoss 5.1 to 6.1 Migration Problem...

Posted by "Weston M. Price" <wp...@redhat.com>.
Hi Dan,
	It looks like your trying to mix JMS providers. The stacktrace is telling you that you are attempting to use the HornetQ activation spec for your MDB. HornetQ is the default JMS provider for EAP and as such, if you don't tell EAP you want to use another messaging provider then it assumes the default. I assume you are trying to use Qpid. So, you have two choices to define the ResourceAdapter you need to use. You can either use the EAP specific annotation 

 org.jboss.ejb3.annotation.ResourceAdapter

This annotation can usually be found in the jboss-ejb3-ext-api-impl.jar which is generally in the JBOSS_HOME/client directory. This is class level annotation, so simply put this at the top of your MDB as such:

@ResourceAdapter("qpid-ra-<version>.rar")

where <version> corresponds to your version of the Qpid JCA rar file you are using.


If you don't want to use the annotation, you can use the jboss.xml deployment descriptor mechanism. In your ejb-jar/META-INF directory, if you don't already have one,  create the jboss.xml file. it should look something like:

<jboss
        xmlns="http://www.jboss.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
                            http://www.jboss.org/j2ee/schema/jboss_5_0.xsd"
        version="3.0">

    <enterprise-beans>
        <message-driven>
           <ejb-name>ResourceConfigListenerMDB</ejb-name>
           <resource-adapter-name>qpid-ra-<version>.rar</resource-adapter-name>
        </message-driven>
   </enterprise-beans>
</jboss>

There were very few infrastructure changes between EAP 5 and EAP 6 so looking at your problem, one of three things may have happened:

1) The annotation mentioned above may have been removed
2) The descriptor mentioned above may have been removed
3) The original EAP 5.x environment replaced HornetQ with Qpid as the default JMS provider. If this is the case, then you will have to migrate this configuration over the EAP 6. This may have already been done for you before, so you will have to find out if this is indeed the case, and just replace HornetQ with Qpid on the new instance.


Note, if it is actually #3, I highly recommend using approach #1 or #2. Either way will avoid a lot of work on your part and is much easier to migrate if you have to do this again. 

Regards,

Weston

On May 16, 2012, at 4:30 PM, Dan Carda wrote:

> 
> Hi there!
> I'm currently in the middle of a JBoss 5.1 to 6.1 migration and it's not
> going well.  I know the problem was caused by ME, but I'm hopeful someone
> will go, "oh yeah, you need to do <this>".
> 
> Currently, I'm using the 0.10 version.  This version worked fine under JBoss
> 5.1.  So well in fact this location standardized on it.  
> 
> The message I'm getting from JBoss is:
> 
> 14:21:40,977 INFO  [org.jboss.ejb3.EJBContainer] STARTED EJB:
> com.twtelecom.esbc.sip.mdb3.qpid.resourceconfig.ResourceConfigListenerMDB
> ejbName: ResourceConfigListenerMDB
> 14:21:41,005 ERROR
> [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error
> installing to Start:
> name=jboss.j2ee:ear=sip_application-ear-1.0-SNAPSHOT.ear,jar=sip_application-ejb-1.0-SNAPSHOT.jar,name=ResourceConfigListenerMDB,service=EJB3
> state=Create: org.jboss.deployers.spi.DeploymentException: Error for
> ActivationSpec class org.hornetq.ra.inflow.HornetQActivationSpec as JavaBean
> Caused by: java.beans.IntrospectionException: No property found for:
> connectionURL on JavaBean:
> org.hornetq.ra.inflow.HornetQActivationSpec(ra=null
> destination=jms/QpidNowTopic destinationType=javax.jms.Topic
> selector=SipMessageType = 'ResourceConfigMsg' ack=Auto-acknowledge
> durable=false clientID=null user=null maxSession=1)
> 
> In my EJB, this I define this:  
> 
> @MessageDriven ( activationConfig = { @ActivationConfigProperty (
> propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge" ) ,
> @ActivationConfigProperty ( propertyName = "connectionURL", propertyValue =
> "amqp://guest:guest@clientid/test?brokerlist='tcp://mrgdalprdn4:5672'" ) ,
> @ActivationConfigProperty ( propertyName = "destination", propertyValue =
> "jms/QpidNowTopic" ) , @ActivationConfigProperty ( propertyName =
> "destinationType", propertyValue = "javax.jms.Topic" ) ,
> @ActivationConfigProperty ( propertyName = "maxSession", propertyValue = "1"
> ) , @ActivationConfigProperty ( propertyName = "messageSelector",
> propertyValue = "SipMessageType = 'ResourceConfigMsg'" ) ,
> @ActivationConfigProperty ( propertyName = "useLocalTx", propertyValue =
> "false" ) } ) @TransactionAttribute( TransactionAttributeType.NOT_SUPPORTED
> ) public class SystemConfigListenerMDB extends ResourceConfigLogic
> implements MessageListener{
> 
> Any idea what I'm doing wrong???
> 
> Thanks!
> Daniel Carda
> Time Warner Telecom
> 
> 
> 
> 
> -- 
> View this message in context: http://old.nabble.com/JBoss-5.1-to-6.1-Migration-Problem...-tp33860736p33860736.html
> Sent from the Qpid Developers mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org