The scenario I suggested is actually portrayed in this article:
http://www.onjava.com/lpt/a/852
Quote:
...Scenario B: Multiple database access via multiple application servers:
The J2EE architecture allows updates of data at multiple sites to be performed in a single transaction. In the following figure, a client invokes a method on enterprise Bean A. which in turn sends a message to a message queue, updates data in database A. After that, EJB A calls a method in another EJB B deployed in another application server which updates data in database B. The EJB architecture makes it possible to perform the updates to databases A and B in a single transaction...
So as I explained in the previous post, it does not appear that Hibernate should add any additional complexity to this situation. The fact that the JMS call or the EJB B call may open a Session do some updates/inserts/deletions and then close the Session should be seen as the same way a JDBC Connection would be opened, queries ran, and then closed.
So it seems to me that Hibernate does not put any additional requirements onto the scenario of having a single transaction span multiple databases and app servers, any different than JDBC/JTA would require. Is this correct?
Thanks,
-jay