3 Replies Latest reply on Nov 7, 2012 1:48 PM by Peter van Nes at The Future Group

    How to rollback AQ dequeue operations in BPEL

    Peter van Nes at The Future Group

      For a service i initially started using an Oracle AQ Adapter for dequeueing messages from an Oracle AQ. This works fine, only when processing of the message fails, i have to rollback the dequeue operation. Although that Oracle AQ Adapters do support XA, it do not see a way (documented in oracle docs, google etc) to force the rollback of that dequeue operation. Is it possible to rollback a dequeue operation using the oracle AQ Adapter?

      Secondly i tried it using an JMS Adapter. Herefore i created within a existing JMS Module a foreign server (WNSForeignServer) with
      - JNDI Initial Context Factor; oracle.jms.AQjmsInitialContextFactory
      - JNDI Properties: datasource=jdbc/CDB

      I created a new connection factory in WNSForeignServer: WNS_BERICHT_CF with
      - Local JNDI Name: aqjms/XAQueueConnectionFactory
      - Remote JNDI Name: XAQueueConnectionFactory

      I created a new destination in WNSForeignServer: wns_bericht_q with
      - Local JNDI Name: jms/aq/wns_bericht_q
      - Remote JNDI Name: Queues/WNS_BERICHT_Q

      Restarted the managed server
      WNS_BERICHT_Q is an existing queue which is also used by the configured (and working) AQ Adapter.

      In my composite i added a JMS Adapter using Oracle Advanced Queueing as JMS Provider and Consume Message as operation Type.
      The Destination Name is jms/aq/wns_bericht_q (visible when using the browse option)

      When putting messages on the queue the message is retrieved when using the Oracle AQ Adapter, but ik keep failing retrieving the messages using th JMS adapter.

      Any help/ideas is appreciated ! (in other words; HELP! ;-) )