Hello,

in my application I need transactional access to the file system and
therefore use Apache Jakarta Commons Transaction. As the file system is not
the only resource involved, but also a database, I wrapped an XAResource
implementation around it for usage with JTA. And for using declarative
transaction management I additionally implemented JCA for it. Much work for
such a little task ...

So far so good, but actually it does not work. My XAResource does not get
enlisted. First I tried it as described at http://jencks.org/Outbound+JDBC,
second as at http://jroller.com/page/Templth/20051122, which is probably the
same at the end. I use the default combination of Spring, Jencks and
Geronimo's connector.

Of course my implementations of XAResource or the JCA stuff might be wrong,
but I don't think it is the reason here. I have some test cases that work
quite well with the LocalTransaction. And I did some remote debugging and
made the observation that the resource is tried to be enlisted before the
transaction has actually been started.
Expressed in code: I'm first at Geronimo's
TransactionEnlistingInterceptor.getConnection(), where
transactionContextManager.getContext() still returns null and so the
XAResource does not get enlisted. Only afterwards I get to
GeronimoUserTransaction.ensureContext() creating the first time a context in
the TransactionContextManager instance.

Do you have any idea or hints?

Thanks in advance,

Jörg

-- 
10 GB Mailbox, 100 FreeSMS/Monat http://www.gmx.net/de/go/topmail
+++ GMX - die erste Adresse für Mail, Message, More +++

Reply via email to