Howdy,

Given Container-Managed Transactions, it appears that
unless Minerva is used as the connection pool manager
(vs. using Oracle's pool manager) then new requests to
obtain a database connection from JNDI always returns
a *new* connection rather than the same connection
from previous lookup requests within the same
transaction:

1. Container starts transaction
2. Container invokes method on Session Bean A
3. Session bean A gets connection (connection is new)
4. Session bean A inserts or updates data to db
5. Session bean A invokes method on session bean B
6. Container should see existing transaction
7. Container invokes method on session bean B
8. Session bean B gets connection (connection is new)

The above appears to occur if the
oracle.jdbc.xa.client.OracleXADataSource is in use.

However, when Minerva is used instead, the existing
connection is returned from the lookup.

XAConnectionFactory.prepareObject() tests the current
connection against instanceof XAConnectionImpl (which
is part of the Minerva package) and returns the
existing connection if true. It appears that an Oracle
pooled connection fails this test, and a new
connection is always returned.

Questions: Is there a way to configure jboss's
transaction manager to use Oracle's pooled
connections? Or do you have to use Minerva pools for
successful transaction support under jboss? Is this a
bug or feature? ;-)

Thanks!

Vaughn


__________________________________________________
Do You Yahoo!?
Yahoo! Shopping - Thousands of Stores. Millions of Products.
http://shopping.yahoo.com/


--
--------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
Problems?:           [EMAIL PROTECTED]

Reply via email to