5 Replies Latest reply on Nov 24, 2008 1:51 AM by UmaMahesh Rao

    MDB InstanceNotFoundException wmq.jmsra.rar not registered.

    Perry Langostine Newbie

      Hi

      I'm getting the following JBoss error with my MDB.

      jboss.j2ee:ear=otisEAR.ear,jar=otisEJB.jar,name=IncomingMessageBean,service=EJB3 -> javax.management.InstanceNotFoundException: jboss.jca:service=RARDeployment,name='wmq.jmsra.rar' is not registered.


      I changed back to an EJB2 style MDB. The same error message appears.


      I am following this procedure:
      http://www.ibm.com/developerworks/websphere/library/techarticles/0710_ritchie/0710_ritchie.html

      Start with clean Jboss 5 install
      While jboss stopped:
      copy "C:\Program Files\IBM\WebSphere MQ\Java\lib\com.ibm.mqetclient.jar" C:\jboss-5.0.0.Beta4\server\default\lib

      While jboss running:
      copy wmq.jmsra.rar C:\jboss-5.0.0.Beta4\server\default\deploy
      output is:
      17:48:38,546 INFO [RARDeployment] Required license terms exist, view vfsfile:/C:/jboss-5.0.0.Beta4/server/default/deploy/wmq.jmsra.rar/META-INF/ra.xml
      


      then:
      copy E:\dev\eCommerce\otis\wmq.jmsra-ds.xml C:\jboss-5.0.0.Beta4\server\default\deploy
      output is:
      17:48:59,718 INFO [AdminObject] Bound admin object 'com.ibm.mq.connector.outbound.MQQueueProxy' at 'wsmq/LPTestQ'
      17:48:59,828 INFO [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=ConnectionFactoryBinding,name=MQCF' to JNDI name 'java:MQCF'
      


      then deploy application (from MyEclipse). Results in output fragment:
      17:54:50,765 INFO [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=ConnectionFactoryBinding,name=JmsXA' to JNDI name 'java:JmsXA'
      17:54:55,046 INFO [MCKernelAbstraction] installing bean: jboss.j2ee:ear=otisEAR.ear,jar=otisEJB.jar,name=IncomingMessageBean,service=EJB3 with dependencies:
      17:54:55,046 INFO [MCKernelAbstraction] and demands:
      17:54:55,046 INFO [MCKernelAbstraction] jboss.ejb:service=EJBTimerService
      17:54:55,062 INFO [MCKernelAbstraction] and supplies:
      17:54:55,062 INFO [MCKernelAbstraction] Class:javax.jms.MessageListener
      17:54:57,625 INFO [EJBContainer] STARTED EJB: test.service.ejb.IncomingMessageBean ejbName: IncomingMessageBean
      17:54:57,781 ERROR [AbstractKernelController] Error installing to Start: name=jboss.j2ee:ear=otisEAR.ear,jar=otisEJB.jar,name=IncomingMessageBean,service=EJB3 state=Create
      org.jboss.deployment.DeploymentException: Unable to create activation spec ra=jboss.jca:service=RARDeployment,name='wmq.jmsra.rar' messaging-type=javax.jms.MessageListener properties={destination=org.jboss.metadata.ejb.spec.ActivationConfigPropertyMetaData@aac6440e{destination}, useJNDI=org.jboss.metadata.ejb.spec.ActivationConfigPropertyMetaData@f7287ad0{useJNDI}, transportType=org.jboss.metadata.ejb.spec.ActivationConfigPropertyMetaData@a8d93e03{transportType}, maxPoolDepth=org.jboss.metadata.ejb.spec.ActivationConfigPropertyMetaData@3fca3f03{maxPoolDepth}, destinationType=org.jboss.metadata.ejb.spec.ActivationConfigPropertyMetaData@96f19068{destinationType}}
       at org.jboss.deployment.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:52)
       <snip>
      Caused by: javax.management.InstanceNotFoundException: jboss.jca:service=RARDeployment,name='wmq.jmsra.rar' is not registered.
       at org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:529)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:662)
       at org.jboss.ejb3.JmxClientKernelAbstraction.invoke(JmxClientKernelAbstraction.java:44)
       at org.jboss.ejb3.mdb.inflow.JBossMessageEndpointFactory.createActivationSpec(JBossMessageEndpointFactory.java:294)
       ... 56 more
      <snip>
      17:55:09,265 INFO [RARDeployment] Required license terms exist, view vfsfile:/C:/jboss-5.0.0.Beta4/server/default/deploy/wmq.jmsra.rar/META-INF/ra.xml
      17:55:10,078 INFO [AdminObject] Bound admin object 'com.ibm.mq.connector.outbound.MQQueueProxy' at 'wsmq/LPTestQ'
      17:55:10,093 INFO [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=ConnectionFactoryBinding,name=MQCF' to JNDI name 'java:MQCF'
      17:55:10,171 ERROR [ProfileServiceBootstrap] Failed to load profile: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):
      
      *** CONTEXTS IN ERROR: Name -> Error
      
      jboss.j2ee:ear=otisEAR.ear,jar=otisEJB.jar,name=IncomingMessageBean,service=EJB3 ->
      javax.management.InstanceNotFoundException: jboss.jca:service=RARDeployment,name='wmq.jmsra.rar' is not registered.
      



      contents of wmq.jmsra-ds.xml:
       <?xml version="1.0" encoding="UTF-8"?>
       <connection-factories>
      
       <!-- JCA Connection factory definitions -->
       <tx-connection-factory>
       <jndi-name>MQCF</jndi-name>
       <xa-transaction />
       <rar-name>wmq.jmsra.rar</rar-name>
       <connection-definition>javax.jms.ConnectionFactory</connection-definition>
       <config-property name="channel" type="java.lang.String">SYSTEM.DEF.SVRCONN</config-property>
       <config-property name="hostName" type="java.lang.String">127.0.0.1</config-property>
       <config-property name="port" type="java.lang.String">1414</config-property>
       <config-property name="queueManager" type="java.lang.String">QM_stg352670</config-property>
       <config-property name="transportType" type="java.lang.String">CLIENT</config-property>
       </tx-connection-factory>
      
       <!-- mbeans defining JCA administered objects -->
       <mbean code="org.jboss.resource.deployment.AdminObject" name="jca.wmq:name=wsmqLPTestQ">
       <attribute name="JNDIName">wsmq/LPTestQ</attribute>
       <depends optional-attribute-name="RARName">jboss.jca:service=RARDeployment,name='wmq.jmsra.rar'</depends>
       <attribute name="Type">javax.jms.Queue</attribute>
       <attribute name="Properties">
       baseQueueManagerName=QM_stg352670
       baseQueueName=LPTestQ
       </attribute>
       </mbean>
      
       </connection-factories>
      


      EJB is:
       @MessageDriven
       (
       name = "IncomingMessageBean",
       activationConfig =
       {
       @ActivationConfigProperty (propertyName = "destination", propertyValue = "wsmq/LPTestQ"),
       @ActivationConfigProperty (propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
       @ActivationConfigProperty (propertyName = "transportType", propertyValue = "CLIENT"),
       @ActivationConfigProperty (propertyName = "useJNDI", propertyValue = "true"),
       @ActivationConfigProperty (propertyName = "maxPoolDepth", propertyValue = "1")
       },
       messageListenerInterface = MessageListener.class
       )
       @ResourceAdapter ("wmq.jmsra.rar")
       public class IncomingMessageBean implements MessageListener
       {
       public void onMessage (Message msg)
       {
       }
       }
      


      Is this my problem or JBoss 5's? Thanks for your assistance.