You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by MR...@intersoft.de on 2005/02/23 18:42:14 UTC

OJB and WebSphere 6

Hello,
is anybody using  OJB together with WebSphere 6 ?

We are running our application on WebLogic and  Oracle application 
servers. No problems so far.
But now , when we try to set it up on an WebSphere 6 app server
we get a strange exception:

[17.02.05 14:47:36:387 GMT+01:00] 00000045 LocalTransact E   J2CA0031I: 
Die Methode delist hat java.lang.IllegalStateException: Cannot delist 
Resource from cleanup. A Global transaction is active.
        at 
com.ibm.ws.LocalTransaction.LocalTranCoordImpl.delistFromCleanup(LocalTranCoordImpl.java:572)
        at 
com.ibm.ejs.j2c.LocalTransactionWrapper.delist(LocalTransactionWrapper.java:405)
        at 
com.ibm.ejs.j2c.ConnectionEventListener.localTransactionRolledback(ConnectionEventListener.java:447)
        at 
com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.processLocalTransactionRolledbackEvent(WSRdbManagedConnectionImpl.java:1865)
        at 
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.rollback(WSJdbcConnection.java:2280)
        at 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.localRollback(Unknown 
Source)
        at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.abortTransaction(Unknown 
Source)
        at org.apache.ojb.broker.core.PersistenceBrokerImpl.close(Unknown 
Source)
        at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.close(Unknown 
Source)
        at 
org.apache.ojb.broker.core.PoolablePersistenceBroker.close(Unknown Source)
        at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.close(Unknown 
Source)
        at 
org.apache.ojb.broker.core.PersistenceBrokerHandle.close(Unknown Source)
schnipp ........

[17.02.05 14:47:36:496 GMT+01:00] 00000045 ConnectionEve E   J2CA0073E: 
Die Registrierung der Verbindung von Ressource lifestreamDataSourceAS400 
bei der Transaktion in Methode localTransactionRolledbacked konnte 
aufgrund einer Ausnahme nicht aufgehoben werden. Der Abbruch der 
Verbindung wird eingeleitet. Die Ausnahme 
javax.resource.ResourceException: delist: caught Exception
        at 
com.ibm.ejs.j2c.LocalTransactionWrapper.delist(LocalTransactionWrapper.java:447)
        at 
com.ibm.ejs.j2c.ConnectionEventListener.localTransactionRolledback(ConnectionEventListener.java:447)
        at 
com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.processLocalTransactionRolledbackEvent(WSRdbManagedConnectionImpl.java:1865)
        at 
com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.rollback(WSJdbcConnection.java:2280)
        at 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.localRollback(Unknown 
Source)
        at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.abortTransaction(Unknown 
Source)
        at org.apache.ojb.broker.core.PersistenceBrokerImpl.close(Unknown 
Source)
        at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.close(Unknown 
Source)
        at 
org.apache.ojb.broker.core.PoolablePersistenceBroker.close(Unknown Source)
        at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.close(Unknown 
Source)
        at 
org.apache.ojb.broker.core.PersistenceBrokerHandle.close(Unknown Source)
schnipp ....

 LT_ROLLBACK  is not allowed for the current transaction state = 
NO_TRANSACTION_ACTIVE
[17.02.05 14:47:36:793 GMT+01:00] 00000045 LocalTranCoor E   WLTC0016E: 
Die Ressource lifestreamDataSourceAS400 konnte nicht ausgeführt werden. 
Der Stack-Trace zur Ausnahmebedingung wird im Folgenden angezeigt: 
javax.transaction.xa.XAException
        at 
com.ibm.ejs.j2c.LocalTransactionWrapper.rollback(LocalTransactionWrapper.java:341)
        at 
com.ibm.ws.LocalTransaction.LocalTranCoordImpl.cleanup(LocalTranCoordImpl.java:1088)
        at 
com.ibm.ws.LocalTransaction.LocalTranCoordImpl.end(LocalTranCoordImpl.java:1277)
        at 
com.ibm.ws.webcontainer.webapp.WebAppTransactionCollaborator.postInvoke(WebAppTransactionCollaborator.java:254)
        at 
com.ibm.ws.webcontainer.webapp.WebApp.transactionPostInvoke(WebApp.java:3021)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:822)
        at 
com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:80)
        at 
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1657)
        at 
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:77)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:421)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:367)
schnipp ...


To make it more abstruse our businesslike unit tests do not report any 
errors at all. All results in the database are as expected.
We are using plain OJB Api. 
The Txmanager is set to
OJBTxManagerClass=org.apache.ojb.odmg.LocalTxManager
We do not use
#OJBTxManagerClass=org.apache.ojb.odmg.JTATxManager
 

Any comments?
Any pointers would be very much appreciated ...
Thanks

Michael Ruppert