10 Replies Latest reply: Aug 10, 2012 4:11 AM by lschoelens RSS

Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB

zecas zecas Newbie

Hi,

 

 

I'm searching for some help on setting up JBoss to work out with a remote WebSphere MQ.

 

 

I've read some info around, but still I'm missing something, and I have some specific needs that I must conform to.

 

 

Versions:

JBoss 5.1.0 GA

Java JDK 1.6.0

WebSphere MQ 7.0.1 (on remote machine, 192.168.1.30:1414)

 

 

I've copied the "wmq.jmsra.rar" file into c:\...\jboss-5.1.0.GA\server\default\deploy folder. In that same location, I've created the file "wmq.jmsra-ds.xml", for the queue settings.

 

 

File "wmq.jmsra-ds.xml" contents:

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<connection-factories>
          <mbean code="org.jboss.resource.deployment.AdminObject" name="jboss.jca:service=WASDestination,name=TestQ">
                    <depends optional-attribute-name="RARName">jboss.jca:service=RARDeployment,name='wmq.jmsra.rar'</depends>
                    <attribute name="JNDIName">queue/TestQ</attribute>
                    <attribute name="Type">javax.jms.Queue</attribute>
                    <attribute name="Properties">
                              baseQueueManagerName=QM_server01
                              baseQueueName=TestQ
                    </attribute>
          </mbean>
          <tx-connection-factory>
                    <jndi-name>queue/TestQ</jndi-name>
                    <xa-transaction></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">192.168.1.30</config-property>
                    <config-property name="port" type="java.lang.String">1414</config-property>
                    <config-property name="queueManager" type="java.lang.String">QM_server01</config-property>
                    <config-property name="transportType" type="java.lang.String">CLIENT</config-property>
                    <!--<max-pool-size>20</max-pool-size>-->
          </tx-connection-factory>
</connection-factories>

 

In WebSphere MQ server, I have the queue manager instance named "QM_server01" and I've created a queue "TestQ" with default values applied. It was a fresh MQ install, I've just entered "IBM MQ Explorer" and created the "TestQ" queue.

 

 

Now from my project, I have the following Message Driven Bean:

 

 

package com.queue;


import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.ejb.TransactionManagement;
import javax.ejb.TransactionManagementType;
import javax.jms.Message;
import javax.jms.MessageListener;


@MessageDriven(
                    activationConfig = {
                                        @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
                                        @ActivationConfigProperty(propertyName="destination", propertyValue="queue/TestQ")
                    })
@TransactionManagement(TransactionManagementType.CONTAINER)
public class TestMQ implements MessageListener {


          public void onMessage(Message message) {
                    System.out.println(message.toString());
          }


}

 

This class was working fine, when not using MQ, but just JBoss Messaging with the following definition file "MyQIn-service.xml":

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<server>
    <mbean xmbean-dd="xmdesc/Queue-xmbean.xml" name="jboss.messaging.destination:service=Queue,name=MyQIncoming" code="org.jboss.jms.server.destination.QueueService">
        <attribute name="JNDIName">queue/TestQ</attribute>
        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
        <depends>jboss.messaging:service=PostOffice</depends>
    </mbean>
</server>

 

Now when moving to MQ, replacing "MyQIn-service.xml" for "wmq.jmsra-ds.xml" it doesn't work anymore, throwing the following exception during server startup:

 

2011-07-25 14:52:13,313 INFO  [org.jboss.ejb3.EJBContainer] (main) STARTED EJB: com.queue.TestMQ ejbName: TestMQ
2011-07-25 14:52:13,532 INFO  [org.jboss.web.tomcat.service.deployers.TomcatDeployment] (main) deploy, ctxPath=/mq-web
2011-07-25 14:52:13,954 INFO  [org.apache.coyote.http11.Http11Protocol] (main) Starting Coyote HTTP/1.1 on http-127.0.0.1-8080
2011-07-25 14:52:13,969 INFO  [org.apache.coyote.ajp.AjpProtocol] (main) Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009
2011-07-25 14:52:13,969 INFO  [org.jboss.bootstrap.microcontainer.ServerImpl] (main) JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)] Started in 30s:937ms
2011-07-25 14:52:14,063 WARN  [org.jboss.resource.adapter.jms.inflow.JmsActivation] (WorkManager(2)-4) Failure in jms activation org.jboss.resource.adapter.jms.inflow.JmsActivationSpec@10fab68(ra=org.jboss.resource.adapter.jms.JmsResourceAdapter@1157757 destination=queue/TestQ destinationType=javax.jms.Queue tx=true durable=false reconnect=10 provider=java:/DefaultJMSProvider user=null maxMessages=1 minSession=1 maxSession=15 keepAlive=60000 useDLQ=true DLQHandler=org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler DLQJndiName=queue/DLQ DLQUser=null DLQMaxResent=5)
java.lang.ClassCastException: com.ibm.mq.jms.MQQueue cannot be cast to org.jboss.jms.destination.JBossDestination
          at org.jboss.jms.client.container.SessionAspect.handleCreateConnectionConsumer(SessionAspect.java:766)
          at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect_z_handleCreateConnectionConsumer_14919969.invoke(SessionAspect_z_handleCreateConnectionConsumer_14919969.java)
          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
          at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
          at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86)
          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
          at org.jboss.jms.client.delegate.ClientConnectionDelegate.createConnectionConsumer(ClientConnectionDelegate.java)
          at org.jboss.jms.client.JBossConnection.createConnectionConsumer(JBossConnection.java:140)
          at org.jboss.resource.adapter.jms.inflow.JmsServerSessionPool.setupConsumer(JmsServerSessionPool.java:289)
          at org.jboss.resource.adapter.jms.inflow.JmsServerSessionPool.start(JmsServerSessionPool.java:89)
          at org.jboss.resource.adapter.jms.inflow.JmsActivation.setupSessionPool(JmsActivation.java:656)
          at org.jboss.resource.adapter.jms.inflow.JmsActivation.setup(JmsActivation.java:359)
          at org.jboss.resource.adapter.jms.inflow.JmsActivation$SetupActivation.run(JmsActivation.java:729)
          at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:205)
          at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)
          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
          at java.lang.Thread.run(Thread.java:619)

 

I've searched around a bit, and found some people with similar problem, and the solution seems to be a bit complicated for my setup, because it appears that some JBoss specific classes/configurations to be used.

 

 

The main problem is that we have 2 different application servers, "JBoss 5.1.0GA" and "WebSphere AS 7.5", and the code must execute correctly in both environments. We start implementing this solution in JMS, because it would feel like a safer way not to be dependent on a specific application server.

 

 

At first glance, it appears the ClassCastException should be a problem in JBoss code? Or most probably there is something else in my config settings.

 

 

So can anyone please point me what I'm missing? Or what should I be looking for?

 

 

I was thinking about using "destination" property in MDB for a JNDI search and, in the config file "wmq.jmsra-ds.xml" (to be more exact), I would config all settings to connect to the MQ machine and the existing queue name.

 

Some examples contain "@ResourceAdapter(value = "wmq.jmsra.rar")" annotation on the MDB, that should be available in "...\jboss-5.1.0.GA\common\lib\jboss-ejb3-ext-api.jar", still it fells that I'll have to change code if I wanna deploy to the other environment, WebSphere. And I need it to run on both environments.

 

I've already invested some time with this situation, and I'm starting to feel the time pressure to solve this situation, so ANY help would be very welcome.

 

 

Thank You.

  • 1. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    zecas zecas Newbie

    I gave another attempt, adding the annotation

     

    @ResourceAdapter("wmq.jmsra.rar")
    

     

    to the MDB, and the result was diferent:

     

    2011-07-27 18:05:30,939 INFO [org.jboss.ejb3.EJBContainer] (main) STARTED EJB: com.queue.TestMQ ejbName: TestMQ
    2011-07-27 18:05:30,985 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (main) Error installing to Start: name=jboss.j2ee:ear=mq-1.0.0.ear,jar=mq-ejb-1.0.0.jar,name=TestMQ,service=EJB3 state=Create
    org.jboss.deployers.spi.DeploymentException: Endpoint activation failed ra=jboss.jca:service=RARDeployment,name='wmq.jmsra.rar' activationSpec=javax.jms.Queue:queue/TestQ@@localhost <2372147>
     at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49)
     at org.jboss.ejb3.mdb.inflow.JBossMessageEndpointFactory.activate(JBossMessageEndpointFactory.java:346)
     at org.jboss.ejb3.mdb.inflow.JBossMessageEndpointFactory.start(JBossMessageEndpointFactory.java:212)
     ...
    Caused by: com.ibm.mq.connector.DetailedResourceException: MQJCA1004: Distributed transactions are unavailable., error code: MQJCA1004 An attempt was made to use distributed transactions in an environment where they are not available. Make sure that the WebSphere MQ extended transactional client is installed if required, or use a bindings connection.
     at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:124)
     ... 64 more
    
    

     

    Fine, this problem is known, I then added the annotation

     

    @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
    

     

    to the MDB, and the result was again, diferent:

     

    2011-07-27 18:36:07,459 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (main) Error installing to Start: name=jboss.j2ee:ear=mq-1.0.0.ear,jar=mq-ejb-1.0.0.jar,name=TestMQ,service=EJB3 state=Create
    org.jboss.deployers.spi.DeploymentException: Endpoint activation failed ra=jboss.jca:service=RARDeployment,name='wmq.jmsra.rar' activationSpec=javax.jms.Queue:queue/TestQ@@localhost <3042451>
     at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49)
     at org.jboss.ejb3.mdb.inflow.JBossMessageEndpointFactory.activate(JBossMessageEndpointFactory.java:346)
     ...
    Caused by: javax.resource.spi.ResourceAdapterInternalException: com.ibm.msg.client.jms.DetailedIllegalStateException: JMSWMQ0018: Failed to connect to queue manager '' with connection mode 'Client' and host name 'localhost'. Check the queue manager is started and if running in client mode, check there is a listener running. Please see the linked exception for more information.
     at com.ibm.mq.connector.ResourceAdapterConnectionPool.createNewPoolEntry(ResourceAdapterConnectionPool.java:483)
     at com.ibm.mq.connector.ResourceAdapterConnectionPool.allocateConnection(ResourceAdapterConnectionPool.java:302)
     ...
    Caused by: com.ibm.msg.client.jms.DetailedIllegalStateException: JMSWMQ0018: Failed to connect to queue manager '' with connection mode 'Client' and host name 'localhost'. Check the queue manager is started and if running in client mode, check there is a listener running. Please see the linked exception for more information.
     at com.ibm.msg.client.wmq.common.internal.Reason.reasonToException(Reason.java:496)
     at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:236)
     at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:421)
     ...
    Caused by: com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2059' ('MQRC_Q_MGR_NOT_AVAILABLE').
     at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:223)
     ...
    Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2059;AMQ9204: Connection to host 'localhost(1414)' rejected. [1=com.ibm.mq.jmqi.JmqiException[CC=2;RC=2059;AMQ9213: Comunication error at . [1=java.net.ConnectException[Connection refused: connect],3=localhost]],3=localhost(1414),5=RemoteTCPConnection.connnectUsingLocalAddress]
     at com.ibm.mq.jmqi.remote.internal.RemoteFAP.jmqiConnect(RemoteFAP.java:1809)
     at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:336)
     ...
    Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2059;AMQ9213: Comunication error at . [1=java.net.ConnectException[Connection refused: connect],3=localhost]
     at com.ibm.mq.jmqi.remote.internal.RemoteTCPConnection.connnectUsingLocalAddress(RemoteTCPConnection.java:607)
     at com.ibm.mq.jmqi.remote.internal.RemoteTCPConnection.protocolConnect(RemoteTCPConnection.java:935)
     ...
    Caused by: java.net.ConnectException: Connection refused: connect
     at java.net.PlainSocketImpl.socketConnect(Native Method)
     at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
     ...
    
    

     

    (Some messages, for example "Comunication error at" were given in my language, I translated to english, but all codes were left untouched)

     

    With the added annotations, my MDB now looks like:

     

    package com.queue;
     
     
    import javax.ejb.ActivationConfigProperty;
    import javax.ejb.MessageDriven;
    import javax.ejb.TransactionManagement;
    import javax.ejb.TransactionManagementType;
    import javax.jms.Message;
    import javax.jms.MessageListener;
     
     
    @MessageDriven(
                        activationConfig = {
                                            @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
                                            @ActivationConfigProperty(propertyName="destination", propertyValue="queue/TestQ")
                        })
    @ResourceAdapter("wmq.jmsra.rar")
    
    @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
    public class TestMQ implements MessageListener {
     
     
              public void onMessage(Message message) {
                        System.out.println(message.toString());
              }
     
     
    }
    
    

     

    It seems I'm almost there, just need the JBoss to connect to IP and PORT specified, and not the "localhost". Also I would prefer to just connect using JNDI, and leave everything JBoss related out of the project, as that part would be specific to JBoss configuration, and would be diferent for every application server the client would choose to install on, and not something I need to change in the project code.


     

    So I'm stuck here! Starting try-and-fail technique will be a hard work without some light from the community.

     

    Any ideas?

     

     

    Thanks

  • 2. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    zecas zecas Newbie

    Finally I see some light!

     

    I've changed my MDB to:

     

    package com.queue;
    
    import javax.ejb.ActivationConfigProperty;
    import javax.ejb.MessageDriven;
    import javax.ejb.TransactionAttribute;
    import javax.ejb.TransactionAttributeType;
    import javax.ejb.TransactionManagement;
    import javax.ejb.TransactionManagementType;
    import javax.jms.Message;
    import javax.jms.MessageListener;
    import javax.jms.TextMessage;
    
    import org.jboss.ejb3.annotation.ResourceAdapter;
    
    @MessageDriven(
            activationConfig = {
                    @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
                    @ActivationConfigProperty(propertyName="destination", propertyValue="queue/TestQ"),
                    @ActivationConfigProperty(propertyName="useJNDI", propertyValue="true"),
                    @ActivationConfigProperty(propertyName="hostName", propertyValue="172.21.129.201"),
                    @ActivationConfigProperty(propertyName="port", propertyValue="1414"),
                    @ActivationConfigProperty(propertyName="queueManager", propertyValue="QM_gestaosw_dds02")
            })
    @ResourceAdapter("wmq.jmsra.rar")
    @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
    public class TestMQ implements MessageListener {
    
        public void onMessage(Message message) {
            System.out.println(message.toString());
        }
    
    }
    

     

    And now I successfully receive any messages that are inserted into the MQ.

     

    But I'm now trying to figure out a way of not having this IP, PORT, MQManager info hard coded.

     

    I'm interested in creating a project that does not depend on MQ, nor JBoss.

     

    About JBoss, I'm worried about the "@ResourceAdapter" annotation, that makes an unwanted dependency for the project.

     

    The other info (IP, PORT, etc) gives me a hardcoded metadata that I must change if I need to rebuild if I need to change MQ endpoint, for example if I want to move from Development to Test and latter to a Production environment, I need to rebuild it, and so ending with a diferent EAR for each environment. I was hoping that JMS would use JNDI to get the information from server definitions.

     

    Any way to resolve these issues?

     

    Thanks.

  • 3. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    Benson Fung Newbie

    Hi,

     

    Would you tell me how you can make it work in terms of the setup procedure?  I always got tthe 2035 error.  And complained that the username and password are not valid.

     

    Please help

     

    Thanks

  • 4. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    Doug Grove Newbie

    You can externalize your configuration using JBoss AOP.  So, as you have seen, a basic WebSphere MQ MDB looks like:

     

    @MessageDriven(name="WebSphereMDB", activationConfig =

    {

              @ActivationConfigProperty(propertyName = "messagingType", propertyValue="javax.jms.MessageListener"),

              @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),

              @ActivationConfigProperty(propertyName = "destination", propertyValue = "GSS.SSL.QUEUE")

    })

    @ResourceAdapter(value = "wmq.jmsra.rar")

    @AspectDomain("IBMMQ Message Driven Bean")

    @Pool(value=PoolDefaults.POOL_IMPLEMENTATION_STRICTMAX, maxSize=30, timeout=1800000)

    @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)

    public class WebSphereMDB implements MessageListener {

     

              @Resource

              MessageDrivenContext sessionContext;

     

               /* (non-Javadoc)

              

    • @see javax.jms.MessageListener#onMessage(javax.jms.Message)

               */

              public void onMessage(Message message) {

                        try {

                                  logger.debug("Received message: " + message.getJMSMessageID() + " : " + ((TextMessage)message).getText());

                        } catch (JMSException e) {

                                  logger.error(e.getMessage());

                        }

              }

    }

     

     

    Note the use of the AspectDomain.  The domain can be configured by placing a *-aop.xml file (my-mq-mdb-aop.xml) in the deploy/messging directory.  Sample contents:

     

    <?xml version="1.0" encoding="UTF-8"?>

    <aop xmlns="urn:jboss:aop-beans:1.0">

       <!-- TODO: Jaikiran - These interceptor declarations need not be here since they

       are already declared through the ejb3-interceptors-aop.xml. Duplicating them leads to

       deployment errors. However, if this custom-ejb3-interceptors-aop.xml needs to be

       independent, then we must find a better way of declaring these. Right now, commenting these

       out, can be looked at later. -->

       <!--   

       <interceptor class="org.jboss.ejb3.AllowedOperationsInterceptor" scope="PER_VM"/>

       <interceptor class="org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor" scope="PER_VM"/>

       <interceptor factory="org.jboss.ejb3.security.RunAsSecurityInterceptorFactory" scope="PER_CLASS"/>

       <interceptor class="org.jboss.ejb3.stateless.StatelessInstanceInterceptor" scope="PER_VM"/>

     

     

       <interceptor factory="org.jboss.ejb3.interceptor.EJB3InterceptorsFactory" scope="PER_CLASS_JOINPOINT"/>

       <interceptor factory="org.jboss.aspects.tx.TxInterceptorFactory" scope="PER_CLASS_JOINPOINT"/>

       -->

       <domain name="IBMMQ Message Driven Bean" extends="Message Driven Bean" inheritBindings="true">

          <annotation expr="!class(@org.jboss.ejb3.annotation.DefaultActivationSpecs)">

             @org.jboss.ejb3.annotation.DefaultActivationSpecs (value={@javax.ejb.ActivationConfigProperty(propertyName = "channel", propertyValue = "SSL.CLIENTS"), @javax.ejb.ActivationConfigProperty(propertyName = "queueManager", propertyValue = "SSLQM"), @javax.ejb.ActivationConfigProperty(propertyName = "hostName", propertyValue = "10.0.0.124"), @javax.ejb.ActivationConfigProperty(propertyName = "port", propertyValue = "1415"), @javax.ejb.ActivationConfigProperty(propertyName = "transportType", propertyValue = "CLIENT"), @javax.ejb.ActivationConfigProperty(propertyName = "sslCipherSuite", propertyValue = "SSL_RSA_WITH_3DES_EDE_CBC_SHA")})

          </annotation>

       </domain>

    </aop>

     

     

    This will allow you to externalise your MDB configuration.

  • 5. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    onzyone Newbie

    Great thanks Doug, please can you share your imports for your WebSphereMDB class??

     


  • 6. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    Doug Grove Newbie

    FWIW:

     

    import javax.annotation.PostConstruct;

    import javax.annotation.PreDestroy;

    import javax.annotation.Resource;

    import javax.ejb.ActivationConfigProperty;

    import javax.ejb.CreateException;

    import javax.ejb.EJBException;

    import javax.ejb.MessageDriven;

    import javax.ejb.MessageDrivenContext;

    import javax.ejb.TransactionAttribute;

    import javax.ejb.TransactionAttributeType;

    import javax.jms.JMSException;

    import javax.jms.Message;

    import javax.jms.MessageListener;

    import javax.jms.TextMessage;

     

    import org.apache.commons.logging.Log;

    import org.apache.commons.logging.LogFactory;

    import org.jboss.ejb3.annotation.AspectDomain;

    import org.jboss.ejb3.annotation.Pool;

    import org.jboss.ejb3.annotation.ResourceAdapter;

    import org.jboss.ejb3.annotation.defaults.PoolDefaults;

     

    The JBoss annotations can be found in jboss-ejb3-ext-api-1.0.0.jar or jboss-ejb3-ext-api.jar.

  • 7. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    onzyone Newbie

    Hello Doug,

     

    I am likely doing something wrong, but I can't seem to get the aop to run. 

     

    I have a standard version of jboss5.1.0.ga and when I pop (even the wmq-ssl-aop.xml you provided) file into deploy/messging nothing shows up in the jboss logs.

     

    I have also tried to build it into my project via

        - META-INF

            - jboss-aop.xml

    This time it fails

     

    {code}

    state=ClassLoader mode=Manual requiredState=PostClassLoader

    org.jboss.deployers.spi.DeploymentException: org.jboss.deployers.spi.DeploymentException: Error deploying: IBMMQ Message Driven Bean

    {code}

     

    Is there a "hello" world aop app zipped up some place that I can push into my jboss evn to make sure that it is working?

     

    Thanks in advance

  • 8. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    randz Newbie

    zecas zecas wrote:

     

    
            activationConfig = {
                    @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
                    @ActivationConfigProperty(propertyName="destination", propertyValue="queue/TestQ"),
                    @ActivationConfigProperty(propertyName="useJNDI", propertyValue="true"),
                    @ActivationConfigProperty(propertyName="hostName", propertyValue="172.21.129.201"),
                    @ActivationConfigProperty(propertyName="port", propertyValue="1414"),
                    @ActivationConfigProperty(propertyName="queueManager", propertyValue="QM_gestaosw_dds02")
            })
    

     

    Hi zecas,

     

    I m using EJB 2 so i couldnt put "port" and "hostName" in jboss.xml. I m using jboss 5 and also i couldnt find any clue in jboss_5_0.xsd.

    Could you share your jboss.xml at this point?

  • 9. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    randz Newbie

    Ok.. at last i succesfully received a MQ message with JBOSS. i had to use jboss 5 / EJB 2 (although this is much easier with EJB 3).

    I must say that these posts (specially  from Zecas) helped me a lot.

    Thanks guys..

  • 10. Re: Unable to set JBoss 5.1.0-GA consuming IBM MQ in annotated MDB
    lschoelens Newbie

    Hello randz.

     

    I'm in the same situation as you (EJB 2 MDB deployement in Jboss 5 and WMQ).


    How did you succeed your deployment ?

     

    Thanks in advance.