2 Replies Latest reply on Apr 29, 2008 1:31 PM by Kevin Conner

    Trying ESB with IBM MQ 6 - missing something in the config

    Len DiMaggio Apprentice

      I'm trying to configure the ESB with IBM MQ 6 and have hit a dead-end - can anyone suggest how to resolve this?

      There are some steps missing in: http://wiki.jboss.org/wiki/JBossESBMessagingSupport (http://jira.jboss.com/jira/browse/JBESB-1697). Once we can get this sorted out, I'll update the wiki.

      The steps that I've followed are:

      1) Installed: WebSphereMQ6.0-Linux.tar.gz, 6.0.2-WS-MQ-LinuxIA32-FP0001.tar.gz
      
      2) Created queues named: ACTION_REQUEST, B and HELLO_WORLD_ACTION
       as user "mqm"
       crtmqm -q ConnectionFactory
       strmqm
       runmqsc
       define qlocal (ACTION_REQUEST)
       define qlocal (B)
       define qlocal (HELLO_WORLD_ACTION)
       end
       runmqlsr -m ConnectionFactory -t tcp &
      
      3) Added jars to server/name/lib:
       com.ibm.mq.pcf.jar
       mqcontext.jar
       com.ibm.mq.jar
       com.ibm.mqjms.jar
       connector.jar
       dhbcore.jar
      
      4) Added jboss user to mqm user group
      
      5) Modified samples/quickstarts/helloworld_action/jboss-esb.xml - see below.
      
      6) On deploy of helloworld_action - this exception is raised:
      
      Caused by: javax.naming.NotContextException: __dummy2@#$% cannot be listed
       at com.ibm.mq.jms.context.MQContext.list(MQContext.java:776)
       at javax.naming.InitialContext.list(InitialContext.java:395)
       at org.jboss.soa.esb.helpers.NamingContextPool.createContext(NamingContextPool.java:341)
       ... 56 more
      12:45:02,599 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
      
      
      samples/quickstarts/helloworld_action/jboss-esb.xml:
      
      ---------------------------------
      <?xml version = "1.0" encoding = "UTF-8"?>
      <jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd" parameterReloadSecs="5">
      
       <providers>
       <jms-provider
       name="JBossMQ"
       jndi-URL="localhost:1414/SYSTEM.DEF.SVRCONN"
       jndi-context-factory="com.ibm.mq.jms.context.WMQInitialContextFactory"
       connection-factory="ConnectionFactory" >
      
       <jms-bus busid="quickstartGwChannel">
       <jms-message-filter
       dest-type="QUEUE"
       dest-name="ACTION_REQUEST"
       />
       </jms-bus>
       <jms-bus busid="quickstartEsbChannel">
       <jms-message-filter
       dest-type="QUEUE"
       dest-name="B"
       />
       </jms-bus>
      
       </jms-provider>
       </providers>
      
       <services>
      
       <service category="HelloWorld_ActionESB"
       name="SimpleListener"
       description="Hello World" >
       <listeners>
       <jms-listener name="JMS-Gateway"
       busidref="quickstartGwChannel"
       maxThreads="1"
       is-gateway="true"
       />
       <jms-listener name="JMS-ESBListener"
       busidref="quickstartEsbChannel"
       maxThreads="1"
       />
       </listeners>
       <actions>
       <action name="displayAction"
       class="org.jboss.soa.esb.samples.quickstart.helloworldaction.MyJMSListenerAction"
       process="displayMessage">
       <property name="exceptionMethod" value="exceptionHandler"/>
       </action>
       <action name="playAction"
       class="org.jboss.soa.esb.samples.quickstart.helloworldaction.MyJMSListenerAction"
       process="playWithMessage">
      
       <property name="exceptionMethod" value="exceptionHandler"/>
       </action>
       <action name="notificationAction"
       class="org.jboss.soa.esb.actions.Notifier">
       <property name="okMethod" value="notifyOK" />
       <property name="notification-details">
       <NotificationList type="OK">
       <target class="NotifyConsole" />
       <target class="NotifyQueues">
       <messageProp name="quickstart" value="hello_world_action" />
       <queue jndiName="HELLO_WORLD_ACTION" connection-factory="ConnectionFactory">
       <property name="java.naming.factory.initial" value="com.ibm.mq.jms.context.WMQInitialContextFactory"/>
       </queue>
       </target>
       </NotificationList>
       </property>
       </action>
       </actions>
       </service>
       </services>
      
      </jbossesb>
      
      ---------------------------------
      
      Here's a longer stack trace:
      
      12:45:02,591 WARN [ServiceController] Problem starting service jboss.esb:deployment=Quickstart_helloworld_action.esb
      org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleException: Unexpected naming context exception from prepareMessageReceiver
       at org.jboss.soa.esb.listeners.gateway.JmsGatewayListener.doInitialise(JmsGatewayListener.java:125)
       at org.jboss.soa.esb.listeners.lifecycle.AbstractManagedLifecycle.initialise(AbstractManagedLifecycle.java:133)
       at org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleController.initialiseInstances(ManagedLifecycleController.java:150)
       at org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleController.start(ManagedLifecycleController.java:69)
       at org.jboss.soa.esb.listeners.config.JBoss4ESBDeployment.startService(JBoss4ESBDeployment.java:83)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
       at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
       at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
       at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
       at $Proxy0.start(Unknown Source)
       at org.jboss.system.ServiceController.start(ServiceController.java:417)
       at org.jboss.system.ServiceController.start(ServiceController.java:435)
       at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
       at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
       at $Proxy4.start(Unknown Source)
       at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302)
       at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
       at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1015)
       at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
       at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
       at sun.reflect.GeneratedMethodAccessor23.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
       at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
       at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
       at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
       at $Proxy9.deploy(Unknown Source)
       at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
       at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
      Caused by: org.jboss.soa.esb.helpers.NamingContextException: Failed to create Naming Context
       at org.jboss.soa.esb.helpers.NamingContextPool.createContext(NamingContextPool.java:356)
       at org.jboss.soa.esb.helpers.NamingContextPool.getContext(NamingContextPool.java:295)
       at org.jboss.soa.esb.helpers.NamingContextPool.getContext(NamingContextPool.java:150)
       at org.jboss.soa.esb.helpers.NamingContextPool.getNamingContext(NamingContextPool.java:400)
       at org.jboss.soa.esb.listeners.gateway.JmsGatewayListener.prepareMessageReceiver(JmsGatewayListener.java:371)
       at org.jboss.soa.esb.listeners.gateway.JmsGatewayListener.doInitialise(JmsGatewayListener.java:109)
       ... 51 more
      Caused by: javax.naming.NotContextException: __dummy2@#$% cannot be listed
       at com.ibm.mq.jms.context.MQContext.list(MQContext.java:776)
       at javax.naming.InitialContext.list(InitialContext.java:395)
       at org.jboss.soa.esb.helpers.NamingContextPool.createContext(NamingContextPool.java:341)
       ... 56 more
      12:45:02,599 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
      
      --- MBeans waiting for other MBeans ---
      ObjectName: jboss.esb:deployment=Quickstart_helloworld_action.esb
       State: FAILED
       Reason: org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleException: Unexpected naming context exception from prepareMessageReceiver
       I Depend On:
       jboss.esb.quickstart.destination:service=Queue,name=quickstart_helloworld_action_Request
       jboss.esb.quickstart.destination:service=Queue,name=quickstart_helloworld_action_Response
       jboss.esb:deployment=jbossesb.esb
      
      --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
      ObjectName: jboss.esb:deployment=Quickstart_helloworld_action.esb
       State: FAILED
       Reason: org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleException: Unexpected naming context exception from prepareMessageReceiver
       I Depend On:
       jboss.esb.quickstart.destination:service=Queue,name=quickstart_helloworld_action_Request
       jboss.esb.quickstart.destination:service=Queue,name=quickstart_helloworld_action_Response
       jboss.esb:deployment=jbossesb.esb