I cannot get UserTransaction to work.
Nothing happens when I commit.
This consists of:
- Using a JTA datasource
- specifying Bean Managed Transaction rather then CMT on the enclosing
session Bean.
- looking up a UserTransaction with:
UserTransaction userTran = (UserTransaction) initCtx
.lookup("java:comp/UserTransaction");
then doing a begin on it, some entity lookup and changes, and a commit.
Could anyone tell me if this should work?
This is under WebSphere 6.1.
As background, I am able to get a JTA data source to work fine if I use
Container Managed Transactions rather than BMT. The problem with that
approach for me is that I am calling the session Bean as a
web-service-enable endpoint. If I leave committing the transaction
entirely to JTA, the commit is done after all of my web service code
has exited and any errors are thrown as soap faults. I want to be able
to catch the error and analyze it before returning from the web
service. I can also do this fine with Resource Local Transactions but
then I do not get the benefits of a JTA datasource managed by WebSphere.
So I am trying to use JTA with BMT which I believe would allow me to
catch errors on commit.
If this is too much of a user question for this list, please let me
know.....
Thanks!
Don