We are playing with the nightly build of JBossTS 4.10 integrated into JBoss 6.M2. We are taking advantage of a recent fix for JIRA JBTM-670 (thanks JTS folks!) We are looking to replace weblogic w/ JBoss but we've run into a show stopper.
We have a particularly troublsome use case involving XA as follows:
1) We have a stateless EJB running on server A.
2) when invoked the bean starts a transaction using OTS (TransactionCurrent) then makes a 'client' call to an Iona CORBA server running
on server B.
3) The method we are calling on B is defined as REQUIRES (via standard transactional POA policy symantics)
4) the remote corba method inserts a record into a table using oracle XA driver and returns the id of the newly inserted record to A
5) A receives the id and attempts to, within the same global transaction, read the newly inserted record to do further work.
6) the transaction is then committed
What we are seeing is that before the OTS transaction is committed the new record is *not* visible to A. After the transaction is comitted it is visible.
What I would expect to see is:
1) A would be able to read the record since it is within the same global transaction.
2) If the Bean on A is marked as transaction required, I would think that I would not need to explicitly create an OTS transaction. The transaction created by the container would implicitly propagate to the corba call to server B (although I'm not sure if this is in the spec - but this is the behavior we see w/ weblogic)
I've attached the bean code, server log, datasource definition.
Our environment is:
1) Hand built nightly of JBossTS 4.10. We build the JTS and run it on windows xp.
2) we copied the jbossjts.jar and jbossjts-integration.jar from the jbossts build into the ./client and ./common/lib directories of jboss6.M2
3) in docs/examples/transactions we run ant to install the jts into the 'all' configuration
4) the IONA orbix641.jar client file is placed into the ./all/lib directory to be accessible to our .ear.
Any help and recommendations is greatly appreciated.
Note: before fix for JBTM-670 we were not even able to call the iona orb. We would get corba TRANSACTION_REQUIRED exceptions - so this is good progress.
Thanks in advance.