cancel
Showing results for 
Search instead for 
Did you mean: 

Transaction System Failure when using XA DataSource

Former Member
0 Kudos

Hi,

I get "Transaction system failure" exception when I attempt to call for example an ejb method with SUPPORTS attribute set and right after calling an ejb method with transaction REQUIRED. This is happening XA Driver (on oracle). It does not seem to be working as designed :). I think the problem occurs in transactions after each time Datasource was used in a non-transactional context.

EnableLocalResourceInOTS is true.

To illustrate the problem please the test snippet below that is failing:

 public void testSupportsAndRequired() throws Exception {
        // calls an ejb method with SUPPORTS attr
        callEJBMethod1();
        // calls an ejb method with REQUIRED attr
        callEJBMethod2();
    }

Below is jdbc 2.0 section from data_sources.xml.

<jdbc-2.0>
        <xads-class-name>
          oracle.jdbc.xa.client.OracleXADataSource
        </xads-class-name>
        <properties>
          <property>
            <property-name>
              URL
            </property-name>
            <property-value>
              jdbc:oracle:thin:@app02:1521:VP40
            </property-value>
          </property>
          <property>
            <property-name>
              Password
            </property-name>
            <property-value encrypted="true">
              5e695d694c5c695d4b
            </property-value>
          </property>
          <property>
            <property-name>
              User
            </property-name>
            <property-value>
              vm32wip
            </property-value>
          </property>
        </properties>
      </jdbc-2.0>

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Mikhail,

Could you please send me the beans that are performing the database operations?

Kind regards,

Andrei

Former Member
0 Kudos

Hi Andrey,

We use a quite nested hierarchy for our beans so it just does not make sense to send you the sources as it contains a lot of redundant stuff and might take a lot of your time.

However let me guess and assume that what you are trying to see is how we actually access the database.

I extracted and modified some code to illustrate this. I hope this will help, otherwise please let me know.

Regards,

Mikhail

  DataSource _dataSource = (DataSource)   _initialContext.lookup( "jdbc/wipPool" ); 

  public java.sql.Connection getDBConnection()
    {
        java.sql.Connection con = null;
        try
        {
            con = _dataSource.getConnection();
            return con;
        }
        catch ( SQLException se )
        {
            traceSQLException( se, (String)null );
            throw new EJBException( se );
        }
    }


    final public Data executeQuery(String sql) {
        Data res = null;
        java.sql.Connection con=null;

        try {
             con = getDBConnection();
             res = _sqlInterface.executeQuery(con,sql,convertDates);
            return res;
        } catch ( SQLException se ) {
            traceSQLException( se, sql );
            throw new EJBException( se );
        }
    }

nikolai_tankov
Explorer
0 Kudos

Hi Mikhail,

Do you close the connection after first non-transacted method call? Could you try to close the connection after each connection usage.

You said that there are 2 methods. First with tx-supports and second with tx-required. Do you have transaction from outside? Do you have transaction in supports method?

When you receive the exception? probably after required method.

Which version of the engine you use ?

Could you send me the exact version of the DB driver or just send me the driver. I want to reproduce the problem with same driver.

Excuse me for these questions but this information will help me.

Best regards,

Nikolai.

Former Member
0 Kudos

Hi Nikolai,

No problem with questions, I totally understand. So I listed your questions with my answers below:

<i>1. Do you close the connection after first non-transacted method call? Could you try to close the connection after each connection usage.

</i>

Yes, connections are always closed after each db call.

Good question though, as I saw a similar exception (stacktrace attached) in case of connection leaks.

<i>You said that there are 2 methods. First with tx-supports and second with tx-required. Do you have transaction from outside? Do you have transaction in supports method?

</i>

There is no transaction from outside. There is no transaction in the "supports" method.

<i>When you receive the exception? probably after required method.

</i>

You are exactly right.

<i>Which version of the engine you use ?</i>

6.40SP9

However the original postings were done basing on 6.40 (for windows 2000 / XP). After migrating to 6.40SP9 the exception has changed. I attached the trace below.

<i>Could you send me the exact version of the DB driver or just send me the driver. I want to reproduce the problem with same driver.</i>

Sure, Oracle JDBC Driver version - 9.0.2.0.0. If you need the driver, just let me know where to send it.

Please let me know if you have any questions.

Thanks,

Mikhail

Here is the latest trace (I extracted a part of it as this thread is probably already the longest one in terms of lines )


Caused by: com.sap.engine.services.connector.exceptions.BaseResourceException: Error in ResourceSet.addAndEnlist("com.sap.engine.services.connector.resource.impl.HandleWrapper@79717e[com.sap.engine.services.dbpool.cci.ConnectionHandle@244a0c](delisted:false) -> com.sap.engine.services.connector.resource.impl.MCEventHandler@412213 --> 3(locTrSupp:false)").
	at com.sap.engine.services.connector.jca.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:241)
	at com.sap.engine.services.dbpool.cci.ConnectionFactoryImpl.getConnection(ConnectionFactoryImpl.java:51)
	... 18 more
Caused by: com.sap.engine.services.ts.exceptions.BaseSystemException: Cannot enlist resource:oracle.jdbc.xa.client.OracleXAResource@10a3078 into jta transaction because of XAException from xaResource.start(xid, XAResource.TMNOFLAGS) 
	at com.sap.engine.services.ts.jta.impl.TransactionImpl.enlistResource(TransactionImpl.java:566)
	at com.sap.engine.services.connector.resource.impl.ResourceSetImpl.addAndEnlist(ResourceSetImpl.java:264)
	at com.sap.engine.services.connector.jca.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:238)
	... 19 more
Caused by: javax.transaction.xa.XAException
	at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)
	at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:153)
	at com.sap.engine.services.ts.jta.impl.TransactionImpl.enlistResource(TransactionImpl.java:556)
	... 21 more

nikolai_tankov
Explorer
0 Kudos

Hi Mikhail,

I think that the problem is into Oracle Driver. With 9.2.0.3 this problem is reproduceable but with 9.2.0.6 this scenario is working.

Please try to change the driver and rerun your scenario.

Best regards,

Nikolai.

Former Member
0 Kudos

Hi Nikolai,

Thanks for your answer, the problem indeed was in the driver.

I could not find 9.2.0.6 readily available for download, and downloaded 9.2.0.5. It did not fix the problem though. Then I switched from thin to OCI and it solved it.

BTW, it failed on netweaver only as the same (thin) configuration was tested weblogic, jboss and websphere.

Regards,

Mikhail

nikolai_tankov
Explorer
0 Kudos

Hi Mikhail,

This problem was reported in bea and JBoss forums so I think that the this scenario is not supported from the driver.

The behavior of the driver is: when one connection is used without transaction that this connection cannot be used inside a transaction.

Probably your tests are slightly different on different servers .

Best regards,

Nikolai.

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Mikhail,

Could you please explain in details the scenario? Is it possible to provide us a test tool in order to simulate this strange behaviour?

Kind regards,

Andrei

Former Member
0 Kudos

Hi Andrey,

To illustrate the actual idea I attached the following test stub. The intention was just to show the problem and

not to make a generic script to run as it would require an

EJB component too.

Running this test results in failures for

testSupportsAndRequired() and testRequired() method.

Regards,

Mikhail

package generic.ejb.miscellaneous.client;

import CertificationBO;
import CertificationBOHome;
import StatusBO;
import StatusBOHome;
import com.genrad.frame.BasicBOBeanException;
import com.genrad.frame.Data;
import com.genrad.frame.JNDIUtils;
import junit.framework.TestCase;

import javax.naming.Context;
import javax.naming.InitialContext;
import java.util.Hashtable;

/**
 * User: MShapirov
 * Date: Mar 24, 2005
 */

public class GenericTransactionTest extends TestCase {

    InitialContext ctx;
    String host= "localhost";
    private int port = 50204;

    public GenericTransactionTest(String s) {
        super(s);
    }

    public GenericTransactionTest() {
        super("Transaction settings test");
    }


    protected void setUp() throws Exception {
        Hashtable props = new Hashtable();
        props.put(Context.INITIAL_CONTEXT_FACTORY, JNDIUtils.INITIAL_CTX_FACTORY);

        props.put(Context.PROVIDER_URL, host + ':' + port);
        ctx = new InitialContext(props);
    }

    public void testSupportsAndRequired() throws Exception {
        String output = callNonTransactionalMethod();
        System.out.println(output);
        output = callTransactionalMethod();
        System.out.println(output);
    }

    public void testSupports() throws Exception {
        String output = callNonTransactionalMethod();
        System.out.println(output);
    }

    public void testRequired() throws Exception {
        String output = callTransactionalMethod();
        System.out.println(output);
    }

    /**
     * statusEJB.getAllCodes has SUPPORTS attr
     * it also goes to database for data
     * @return
     * @throws com.genrad.frame.BasicBOBeanException
     */
    private String callNonTransactionalMethod() throws Exception {
        try {
            // Get a reference to the status bean
            StatusBOHome statusHome = (StatusBOHome) ctx.lookup("StatusBO");
            StatusBO statusEJB = statusHome.create();

            // Get all of the status codes from database
            statusEJB.getAllCodes("MIKH", "USER DEFINITION");
            return "sucess";
        } catch (BasicBOBeanException bbobe) {
            throw bbobe;
        }
    }

    /**
     * certificationEJB.dbRead has REQUIRED attr
     * it also goes to database for data
     * Returns the list of certifications available
     */
    private String callTransactionalMethod() throws Exception{
        try {

            // Get a reference to the certification bean
            CertificationBOHome certificationHome = (CertificationBOHome) ctx.lookup("CertificationBO");
            CertificationBO certificationEJB = certificationHome.create();

            // Get certifications from database
            // all certifications for that site
            certificationEJB.dbRead(new Data("SITE", "MIKH"));

            // Return the certification list
            return "success transactional method";
        } catch (BasicBOBeanException bbobe) {
            throw bbobe;
        }
    }

}

Vlado
Advisor
Advisor
0 Kudos

Hi Mikhail,

Could you paste the whole stack trace of the exception?

Best regards,

Vladimir

Former Member
0 Kudos

Hi Vladimir,

The trace is pretty huge. CertificationBO in the trace is the bean that has all methods TX_REQUIRED.

Regards,

Mikhail

java.rmi.RemoteException: com.sap.engine.services.ejb.exceptions.BaseRemoteException: Transaction system failure in method com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(com.genrad.frame.Data).

at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:915)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)

at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)

at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)

at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)

at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)

Caused by: com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca000ffffffc6 ) in rollback.

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)

... 10 more

Caused by: javax.transaction.xa.XAException

at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)

at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)

at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)

... 12 more

; nested exception is:

javax.transaction.SystemException: com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca000ffffffc6 ) in rollback.

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)

at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)

at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)

at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)

at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)

Caused by: javax.transaction.xa.XAException

at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)

at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)

at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)

... 12 more

at com.sap.engine.services.ejb.exceptions.BaseRemoteException.writeReplace(BaseRemoteException.java:276)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:896)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1011)

at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)

at com.sap.engine.services.rmi_p4.DispatchImpl.throwException(DispatchImpl.java:120)

at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:270)

at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)

at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)

at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)

Caused by: javax.transaction.SystemException: com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca000ffffffc6 ) in rollback.

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)

at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)

at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)

at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)

at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)

Caused by: javax.transaction.xa.XAException

at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)

at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)

at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)

... 12 more

at com.sap.engine.services.ts.exceptions.BaseSystemException.writeReplace(BaseSystemException.java:182)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:896)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1011)

at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)

at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)

at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)

... 11 more

Vlado
Advisor
Advisor
0 Kudos

Hi Mikhail,

This XAException in the OracleXAResource talks nothing to me. I asked a colleague of mine to have a look at this issue and he'll contact you soon. Meanwhile, check in the defaultTrace.trc file - there should be another exception from the XAResource.prepare() method.

Best regards,

Vladimir

Former Member
0 Kudos

Thanks, Valdimir.

I looked in the log and there is some more info about failing to locate DelistResource manager for XA.

Mikhail

here it is:

[code]#1.5#C000C0A82C1C004A0000000000000E0C0003F3227FEC770D#1111754430770#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Server#Java#ts_0011#com.sap.engine.services.ts.exceptions.TSResourceBundle#DelistResource resource manager for the XAResource was not found.#

#1.5#C000C0A82C1C004A0000000100000E0C0003F3227FEC7E83#1111754430786#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Audit#Java###Exception #1#com.sap.engine.services.ts.exceptions.BaseIllegalStateException: DelistResource resource manager for the XAResource was not found. at com.sap.engine.services.ts.jta.impl.TransactionImpl.delistResource(TransactionImpl.java:383) at com.sap.engine.services.connector.resource.impl.ResourceSetImpl.remove(ResourceSetImpl.java:307) at com.sap.engine.services.connector.resource.impl.HandleWrapper.removeItselfFromResourceSet(HandleWrapper.java:105) at com.sap.engine.services.connector.resource.impl.MCEventHandler.connectionClosed(MCEventHandler.java:386) at com.sap.engine.services.dbpool.spi.LocalTXManagedConnectionImpl.removeConnectionHandle(LocalTXManagedConnectionImpl.java:314) at com.sap.engine.services.dbpool.cci.ConnectionHandle.close(ConnectionHandle.java:249) at com.genrad.frame.AbstractSqlImplementation.executeQuery(AbstractSqlImplementation.java:92) at com.genrad.frame.SystemBase.executeQuery(SystemBase.java:754) at com.genrad.frame.SystemBase.executeQuery(SystemBase.java:730) at com.genrad.frame.BasicBOBean.recursiveRead(BasicBOBean.java:2015) at com.genrad.frame.BasicBOBean.dbRead(BasicBOBean.java:1764) at com.genrad.frame.BasicBOBean.dbRead(BasicBOBean.java:1683) at com.genrad.frame.BasicBOBean.dbRead(BasicBOBean.java:1635) at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:827) at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37) at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140) # #1.5#C000C0A82C1C004A0000000200000E0C0003F3227FEC823B#1111754430786#com.sap.engine.services.connector#sap.com/VisipriseMfg#com.sap.engine.services.connector#Guest#2#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002####SAPEngine_Application_Thread[impl:3]_23##0#0#Error##Plain###Error during connection close : com.sap.engine.services.ts.exceptions.BaseIllegalStateException: DelistResource resource manager for the XAResource was not found.# #1.5#C000C0A82C1C004A0000000300000E0C0003F3227FEC8510#1111754430786#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Server#Java#ts_0013#com.sap.engine.services.ts.exceptions.TSResourceBundle#Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002 ) in rollback.#1#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002# #1.5#C000C0A82C1C004A0000000400000E0C0003F3227FEC8E0A#1111754430786#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Audit#Java###Exception #1#com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002 ) in rollback.

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)

at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)

at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)

at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)

at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)

at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)

Caused by: javax.transaction.xa.XAException

at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)

at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)

at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)

at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)

... 12 more

[/code]