-
1. Re: Moving Xids from XidFactory to XAManagedConnectionFactor
adrian.brock Mar 7, 2005 10:44 AM (in response to spiritualmechanic)First, you shouldn't *remove* the XID padding from the XIDFactory.
There are lots of people using that configuration.
Instead, it should be deprecated in favour of the new configuration. -
2. Re: Moving Xids from XidFactory to XAManagedConnectionFactor
adrian.brock Mar 7, 2005 10:51 AM (in response to spiritualmechanic)On the main point, we don't control/write the ManagedConnectionFactory or ManagedConnection. These are application classes.
But we do control where these are created and we can wrap them with our
own processing, e.g. ConnectionListener wraps ManagedConnection.
What we actually want to wrap is the XAResource associated with the ManagedConnection
to perform any necessary padding or flag manipulation.
In particular we want to modify the start()/end() used by our ConnectionListener
and recover() used by the yet to written Recoverable implementation.
This processing then becomes transparent to the transaction manager
and is configured/controlled at each resource. -
3. Re: Moving Xids from XidFactory to XAManagedConnectionFactor
adrian.brock Mar 7, 2005 11:03 AM (in response to spiritualmechanic)There are some other places that "play" with XAResources
like the inbound message processing (MessageEndpoint)
and the old JMS mdb processing (org.jboss.jms.asf) -
4. Re: Moving Xids from XidFactory to XAManagedConnectionFactor
spiritualmechanic Mar 7, 2005 11:43 AM (in response to spiritualmechanic)Oh. Duh. Yes, of course. An XA resource adapter won't use XAManagedConnectionFactory or XAManagedConnection. They'll have their own implementations. So doing it on the ConnectionListener makes total sense.
Thanks."adrian@jboss.org" wrote:
On the main point, we don't control/write the ManagedConnectionFactory or ManagedConnection. These are application classes.
But we do control where these are created and we can wrap them with our
own processing, e.g. ConnectionListener wraps ManagedConnection.
What we actually want to wrap is the XAResource associated with the ManagedConnection
to perform any necessary padding or flag manipulation.
In particular we want to modify the start()/end() used by our ConnectionListener
and recover() used by the yet to written Recoverable implementation.
This processing then becomes transparent to the transaction manager
and is configured/controlled at each resource.