Adrian,
So you're saying it's correct for a JCA impl to call
getManagedConnection()
then
managedConnection.getXAResource()
and then never enlist the resource in a tx, and expect the managed connection to behave as non transacted?
I can't see this requirement in the JCA spec anyway, but I will defer to your better knowledge of JCA.
Our assumption has been, if the AS calls getXAResource() it's reasonable to expect it has done so because it's going to enlist that resource in a tx.
If that's not correct, I find it odd. However our impl should work in either case now, since Jeff has created a proxy around the real XAResource which switches between a non transacted and an XA session behind the scenes depending on whether the resource has been enlisted or not.