1 Reply Latest reply on Apr 6, 2009 10:37 AM by Kevin Conner

    Helloworld_action OracleAQ errors on deployment.

    Daniel Escott Newbie

      Hi

      I'm attempting to get the Helloworld_action OracleAQ quick start working and am struggling to understand an error I am get when deploying.

      org.jboss.soa.esb.couriers.CourierException: Unable to create Message Consumer.

      2009-04-06 11:46:43,194 DEBUG [org.jboss.soa.esb.listeners.message.MessageAwareListener] Courier Exception
      org.jboss.soa.esb.couriers.CourierException: Unable to create Message Consumer
      at org.jboss.internal.soa.esb.couriers.JmsCourier.pickupPayload(JmsCourier.java:406)
      at org.jboss.internal.soa.esb.couriers.JmsCourier.pickup(JmsCourier.java:386)
      at org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl.pickup(TwoWayCourierImpl.java:240)
      at org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl.pickup(TwoWayCourierImpl.java:216)
      at org.jboss.soa.esb.listeners.message.MessageAwareListener.waitForEventAndProcess(MessageAwareListener.java:280)
      at org.jboss.soa.esb.listeners.message.MessageAwareListener.doRun(MessageAwareListener.java:248)
      at org.jboss.soa.esb.listeners.lifecycle.AbstractThreadedManagedLifecycle.run(AbstractThreadedManagedLifecycle.java:115)
      at java.lang.Thread.run(Thread.java:619)
      Caused by: org.jboss.soa.esb.couriers.CourierServiceBindException: Failed to get JMS Session from pool.
      at org.jboss.internal.soa.esb.couriers.JmsCourier.getJmsSession(JmsCourier.java:162)
      at org.jboss.internal.soa.esb.couriers.JmsCourier.createMessageConsumer(JmsCourier.java:478)
      at org.jboss.internal.soa.esb.couriers.JmsCourier.pickupPayload(JmsCourier.java:398)
      ... 7 more
      Caused by: javax.jms.IllegalStateException: This method is not applicable inside the application server. See the J2EE spec, e.g. J2EE1.4 Section 6.6
      at org.jboss.resource.adapter.jms.JmsSessionFactoryImpl.setExceptionListener(JmsSessionFactoryImpl.java:224)
      at org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPool.initConnection(JmsConnectionPool.java:526)
      at org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPool.getSession(JmsConnectionPool.java:214)
      at org.jboss.internal.soa.esb.couriers.JmsCourier.getJmsSession(JmsCourier.java:158)
      ... 9 more
      2009-04-06 11:46:43,194 WARN [org.jboss.soa.esb.listeners.message.MessageAwareListener] Error processing courier, backing off for 1000 milliseconds

      I have followed the updated instructions found in JBESB-1952, found below

      https://jira.jboss.org/jira/browse/JBESB-1952;jsessionid=BFA1AFACEF845F6D3947CF8D68487E5C?page=com.atlassian.jira.ext.fisheye%3Afisheye-issuepanel

      My jboss-esb.xml file (the only file I have touched) looks like the following:

      <?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" connection-factory="QueueConnectionFactory">
       <property name="java.naming.factory.initial" value="org.jboss.soa.esb.oracle.aq.AQInitialContextFactory"/>
       <property name="java.naming.oracle.aq.user" value="OWNER_MULTI_V0200"/>
       <property name="java.naming.oracle.aq.password" value="testdan"/>
       <property name="java.naming.oracle.aq.server" value="TRINIDAD"/>
       <property name="java.naming.oracle.aq.instance" value="DEV_01"/>
       <property name="java.naming.oracle.aq.schema" value="OWNER_MULTI_V0200"/>
       <property name="java.naming.oracle.aq.port" value="1521"/>
       <property name="java.naming.oracle.aq.driver" value="thin"/>
       <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"
       is-gateway="true"
       />
       <jms-listener name="JMS-ESBListener"
       busidref="quickstartEsbChannel"
       />
       </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="QueueConnectionFactory">
       <property name="java.naming.factory.initial" value="org.jboss.soa.esb.oracle.aq.AQInitialContextFactory"/>
       <property name="java.naming.oracle.aq.user" value="OWNER_MULTI_V0200"/>
       <property name="java.naming.oracle.aq.password" value="testdan"/>
       <property name="java.naming.oracle.aq.server" value="TRINIDAD"/>
       <property name="java.naming.oracle.aq.instance" value="DEV_01"/>
       <property name="java.naming.oracle.aq.schema" value="OWNER_MULTI_V0200"/>
       <property name="java.naming.oracle.aq.port" value="1521"/>
       <property name="java.naming.oracle.aq.driver" value="thin"/>
       </queue>
       </target>
       </NotificationList>
       </property>
       </action>
       </actions>
       </service>
       </services>
      
      </jbossesb>
      


      After researching the causes I came across a post suggesting I place <config-property name="Strict">False</config-property> within the jms-ds.xml file, unfortunately this made no difference.

      Any help or guidance would be greatly appreciated.
      Many Thanks
      Dan