Note that there are some explanatory texts on larger screens.

plurals
  1. POSharing JMS and Hibernate transactions in a Spring MDB using Oracle Streams AQ?
    primarykey
    data
    text
    <p>I'm using Oracle 11g for my database and its Oracle Streams AQ feature as JMS implementation.</p> <p>For all I know, it should be possible to implement a Spring based message-driven POJO (MDP) that uses the same data source for both transactional data access and JMS transactions -- all without XA-Transactions (IIRC, this was marketed as a feature of SpringSource Advanced Pack for Oracle).</p> <p>Is this possible using Hibernate as well? Ideally, my MDP would start a JMS transaction and read a message from a queue, then re-use the transaction for data access through Hibernate. If anything goes wrong, the JMS and database transaction would both be rolled back, without using 2-phase commit (2PC).</p> <p>I'm not much of a transaction guru, so before I start digging deeper, can anyone confirm that this is possible and makes sense as well?</p> <p><strong>Update:</strong><br> What I want is an implementation of the <a href="http://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html?page=3" rel="nofollow noreferrer">Shared Transaction Resource pattern</a>. The <a href="http://www.springsource.org/spring_sighting/JW_Distributed_Transactions_in_Spring" rel="nofollow noreferrer">sample code</a> demonstrates it for ActiveMQ and JDBC, but I need to use Oracle Streams AQ and Hibernate. </p> <p><strong>Update2:</strong> The SpringSource Advanced Pack for Oracle has been <a href="http://www.springsource.org/node/3080" rel="nofollow noreferrer">open sourced</a> as part of Spring Data JDBC and it "provides the option of using a single local transaction manager for both database and message access without resorting to expensive distributed 2-phase commit transaction management".</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload