Error transaction no longer active, no further JDBC access allowed

Hello
Our application uses WLS 6.0 SP2, TopLink 3.5.3, WebLogic JMS. A
(pooled) JMS driven message bean invokes other application components
(stateless session beans). Also, application components use JMS to send
messages. JMS and application (through TopLink) use the same JDBC
connection pool. TopLink connects through javax.sql.DataSource and
external transaction controller. 2PC transactions are required to
integrate JMS and TopLink DB access (see data source definition below).
All components run in a single JVM, there is not distributed transaction
between JVMs.
When pushing > 5 concurrent messages into the system I get an error that
somehow indicates TopLink access to a connection that is no longer
associated with a WebLogic transaction.
I can consistently reproduce this error with the Oracle thin, Oracle OCI
and WebLogic OCI JDBC drivers. It seems to occur independent from the
maximum number of connections in the pool (tested between 1 and 30).
Also, when serializing the message supply with a pause in between the
error does not seem to occur.
Has anybody seen this type of problem before?
Are there possibly known issues with the external transaction controller
integration?
Any help greatly appreciated.
Thanks,
Thomas
EXCEPTION [TOPLINK-4002] (3.5.3 JDK1.2):
TOPLink.Public.Exceptions.DatabaseException
EXCEPTION DESCRIPTION: java.sql.SQLException: The transaction is no
longer active (status = Committing). No further JDBC access is allowed
within this transaction.
INTERNAL EXCEPTION: java.sql.SQLException: The transaction is no longer
active (status = Committing). No further JDBC access is allowed within
this transaction.
ERROR CODE: 0
### WebLogic config.xml ###
<JDBCConnectionPool CapacityIncrement="1"
DriverName="oracle.jdbc.driver.OracleDriver" InitialCapacity="1"
MaxCapacity="15" Name="oraclePool"
Properties="user=wlpi20;password=wlpi20;dll=ocijdbc8;protocol=thin"
Targets="appserver"
URL="jdbc:oracle:thin:@10.3.209.35:1521:wcdevdb"/>
<JDBCTxDataSource EnableTwoPhaseCommit="true"
JNDIName="com.bea.wlpi.TXDataSource" Name="TXDataSource"
PoolName="oraclePool" Targets="appserver"/>
<JMSJDBCStore ConnectionPool="oraclePool" Name="oraclePool"/>
### TopLink session/login setup for external transaction controller ###
DatabaseLogin login = project.getLogin();
login.setConnector(new TOPLink.Public.JNDI.JNDIConnector(
initialContext, jdbcDataSource));
login.setUserName(jdbcUser);
login.setPassword(jdbcPasswd);
ServerSession session = new ServerSession(project);
login.useExternalConnectionPooling();
login.useExternalTransactionController();
final String tmname = "weblogic/transaction/TransactionManager";
javax.transaction.TransactionManager transMgr =
(javax.transaction.TransactionManager)
initialContext.lookup(tmname);
JTSSynchronizationListener.setTransactionManager(transMgr);
session.setExternalTransactionController(
new TOPLink.Public.JTS.JTSExternalTransactionController());
logger.fine("registered external transaction controller");

Better to ask on a hibernate forum, but you seem to
be trying to reuse a closed transaction. If you have
auto-commit set to ttrue, try changing it to false,
the explicitly calling commit when you are done.Might be worth finding out why something is trying to use a closed transaction first, before changing your entire transaction management idiom, though

Similar Messages

  • I have two apple ID's but cannot remember the security question answers and the email address is no longer active - how can I access this account

    I have two apple ID's but cannot remember the security question answers and the email address is no longer active - how can I access this account as it seems to be the one my icloud space is attached to.  I haven't backed up my ipad or photos for a while. 

    Security questions:
    https://discussions.apple.com/docs/DOC-4551
    http://support.apple.com/kb/HT5312
    If you don’t know your security questions, phone Apple (using the number listed here:  http://support.apple.com/kb/HE57  ) and ask for the Account Security Team.
    About 2-step verification of your Apple ID:
    http://support.apple.com/kb/ht5570
    This is also useful:
    http://www.macworld.co.uk/ipad-iphone/news/?newsid=3463233&olo=email

  • The email address connected to an old itunes account is no longer active. Can't access music i bought many years ago with out it and the old password.

    the email address connected to an old itunes account is no longer active. Can't access music i bought many years ago with out it and the old password.

    neilfromvancouver wrote:
    the email address connected to an old itunes account
    Old iTunes account?
    You created a new iTunes account instead of updating the old account with new info?'
    Contact iTunes support.

  • About "the transaction is no longer active" exception

    Hi all
    My application is deployed on the weblogic 7 SP2 and whenever i am trying to ship the orders which involves the Database interactions i am getting the following error. I increased the transaction time out periods to 5000 seconds in config.xml but still i am getting following exception.
    can anybody tell me what is excat cause of the following exception and what things i need to do to resolve the exception
    x.x.x.x: MSG: Failed to get Fulfillment Center Sourced Orders java.rmi.RemoteException: EJB Exception: ; nested exception is:
         x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0EJB Exception: ; nested exception is:
         x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0ERROR CODE: 30006 TIME: 1178858558476
         at x.x.x.x.x.ConfirmOrderBean.getAllNewOrdersForStore(ConfirmOrderBean.java:107)
         at jsp_servlet._fulfill.__confirm._jspService(__confirm.java:338)
         at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5445)
         at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:780)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3105)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    Thanx in advance
    Reagrds
    Pandurang

    Hi all
    My application is deployed on the weblogic 7 SP2 and whenever i am trying to ship the orders which involves the Database interactions i am getting the following error. I increased the transaction time out periods to 5000 seconds in config.xml but still i am getting following exception.
    can anybody tell me what is excat cause of the following exception and what things i need to do to resolve the exception
    x.x.x.x: MSG: Failed to get Fulfillment Center Sourced Orders java.rmi.RemoteException: EJB Exception: ; nested exception is:
         x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0EJB Exception: ; nested exception is:
         x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0ERROR CODE: 30006 TIME: 1178858558476
         at x.x.x.x.x.ConfirmOrderBean.getAllNewOrdersForStore(ConfirmOrderBean.java:107)
         at jsp_servlet._fulfill.__confirm._jspService(__confirm.java:338)
         at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5445)
         at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:780)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3105)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    Thanx in advance
    Reagrds
    Pandurang

  • Regarding "the transaction is no longer active" exception

    Hi all
    My application is deployed on the weblogic 7 SP2 and whenever i am trying to ship the orders which involves the Database interactions i am getting the following error. I increased the transaction time out periods to 5000 seconds in config.xml but still i am getting following exception.
    can anybody tell me what is excat cause of the following exception and what things i need to do to resolve the exception
    x.x.x.x: MSG: Failed to get Fulfillment Center Sourced Orders java.rmi.RemoteException: EJB Exception: ; nested exception is:
    x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0EJB Exception: ; nested exception is:
    x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0ERROR CODE: 30006 TIME: 1178858558476
    at x.x.x.x.x.ConfirmOrderBean.getAllNewOrdersForStore(ConfirmOrderBean.java:107)
    at jsp_servlet._fulfill.__confirm._jspService(__confirm.java:338)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5445)
    at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:780)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3105)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    Thanx in advance
    Reagrds
    Pandurang

    pandurang pokharkar wrote:
    Hi all
    My application is deployed on the weblogic 7 SP2 and whenever i am trying to ship the orders which involves the Database interactions i am getting the following error. I increased the transaction time out periods to 5000 seconds in config.xml but still i am getting following exception.
    can anybody tell me what is excat cause of the following exception and what things i need to do to resolve the exception
    x.x.x.x: MSG: Failed to get Fulfillment Center Sourced Orders java.rmi.RemoteException: EJB Exception: ; nested exception is:
    x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0EJB Exception: ; nested exception is:
    x.x.x.x: MSG: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction.The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException]'. No further JDBC access is allowed within this transaction. TIME: 0ERROR CODE: 30006 TIME: 1178858558476
    at x.x.x.x.x.ConfirmOrderBean.getAllNewOrdersForStore(ConfirmOrderBean.java:107)
    at jsp_servlet._fulfill.__confirm._jspService(__confirm.java:338)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1058)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:401)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5445)
    at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:780)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3105)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    Thanx in advance
    Reagrds
    PandurangIt is pretty much as it says. While your code is processing this transaction,
    in the backround in another thread, the transaction controller has discovered
    that this transaction has been running longer than it's configured maximum
    time, so the coordinator rolls it back and tells every JDBC object involved
    to throw the exception you see the next time any of them are asked to run
    another method. Turn on the JTA logging, or instrument your code to show step
    by step the progress of your transactions, so you can see what call(s) take
    too much time.
    Joe

  • JDBC  Transaction is no longer active - status: 'Marked rollback'

    I'm getting the folowing issue, we are not seeing this issue if we recycle the WLS
    Using WLS V10.3.3
    Can any one suggest on this issue, how to reslove this
    85417.772: [Full GC [PSYoungGen: 117504K->0K(234880K)] [PSOldGen: 662564K->665699K(700416K)] 780068K->665699K(935296K) [PSPermGen: 133284K->132438K(225280K)], 30.2876423 secs] [Times: user=31.23 sys=0.68, real=30.32 secs]
    java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 39 seconds
    BEA1-600C65F8B23E363DFDF0]'. No further JDBC access is allowed within this transaction.
    at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:193)
    at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:209)
    at weblogic.jdbc.wrapper.ResultSet.preInvocationHandler(ResultSet.java:99)
    at weblogic.jdbc.wrapper.ResultSet_oracle_jdbc_driver_OracleResultSetImpl.next(Unknown Source)
    at com.vzw.pos.cmw.ejb.service.UserProfileService.getNewUserId(Unknown Source)
    at com.vzw.pos.cmw.ejb.utils.CMWEjbUtil.createUserProfileVO(Unknown Source)
    at com.vzw.pos.cmw.ejb.utils.CMWEjbUtil.createRosterVO(Unknown Source)
    at com.vzw.pos.cmw.ejb.service.AdministrationBean.getRostersByUserId(Unknown Source)
    at com.vzw.pos.cmw.ejb.service.Administration_ujnwz8_ELOImpl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:39)
    at com.vzw.pos.cmw.ejb.service.Administration_ujnwz8_ELOImpl.getRostersByUserId(Unknown Source)
    at com.vzw.pos.cmw.action.CMWTopFrameAction.setUserRoleInSession(Unknown Source)
    at com.vzw.pos.cmw.action.CMWTopFrameAction.changeLocation(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor190.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)
    at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
    at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at com.vzw.pos.cmw.filters.CMWFilter.doFilter(Unknown Source)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3710)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3676)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2272)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2178)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    <Aug 23, 2013 10:41:53 AM EDT> <Warning> <Socket> <BEA-000450> <Socket 298 internal data record unavailable (probable closure due idle timeout), event received -32>
    <Aug 23, 2013 10:41:53 AM EDT> <Warning> <Socket> <BEA-000450> <Socket 286 internal data record unavailable (probable closure due idle timeout), event received -32>
    <Aug 23, 2013 10:41:56 AM EDT> <Warning> <Socket> <BEA-000450> <Socket 299 internal data record unavailable (probable closure due idle timeout), event received -32>
    <Aug 23, 2013 10:42:51 AM EDT> <Warning> <Socket> <BEA-000450> <Socket 286 internal data record unavailable (probable closure due idle timeout), event received -32>

    Here is DS configuration
    Initial Capacity:                  75
    Maximum Capacity:                  75
    Capacity Increment:                    1
    Seconds to trust an idle pool connection:     10
    Shrink Frequency:                    900
    Enable Connection Leak Profiling:          False
    Enable Connection Profiling:               False
    Test Frequency:                         120 seconds
    Test Connections on Reserve:               True
    Connection Reserve Timeout:               10 seconds
    Connection Creation Retry Frequency:         1
    Inactive Connection Timeout:               60 second
    Maximum Waiting for Connection:               2147483647
    Statment Cache Type:     LRU
    Statment Cache Size:     10
    Connection Creation Relay Frequency:      1
    Remove Infected Connections Enabled:      True
    Wrap Data types:     True
    Ignore In-use connections:     True

  • SQLException: Transaction is no longer active (status = Committed).

    I am using TopLink 9.0.3 with a set of stateless session beans running in Weblogic 6.1 hitting an Oracle 8.x database. I am using the recommended approach for using the external trancaction controller but I am seeing the following errors when calling a method on a session bean that persists an object:
    UnitOfWork(2028166)--JTS#beforeCompletion()
    UnitOfWork(2028166)--#executeQuery(DataReadQuery())
    UnitOfWork(2028166)--SELECT SEQUENCE_NUMBER.NEXTVAL FROM DUAL
    UnitOfWork(2028166)--#reconnecting to external connection pool
    UnitOfWork(2028166)--EXCEPTION [TOPLINK-4002] (TopLink - 9.0.3 (Build 423)): oracle.toplink.exceptions.DatabaseException
    EXCEPTION DESCRIPTION: java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
    INTERNAL EXCEPTION: java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
    Strangely enough, this session bean method call works the first time it's called but then fails when I call it the second time. It seems there may be some issue with the transaction listener:
    --------------- nested within: ------------------
    weblogic.transaction.RollbackException: Unexpected exception in beforeCompletion: sync=oracle.toplink.jts.wls.WebLogicSynchronizationListener@1609cc
    EXCEPTION DESCRIPTION: java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
    INTERNAL EXCEPTION: java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
    ERROR CODE: 0 - with nested exception:
    [EXCEPTION [TOPLINK-4002] (TopLink - 9.0.3 (Build 423)): oracle.toplink.exceptions.DatabaseException
    EXCEPTION DESCRIPTION: java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
    INTERNAL EXCEPTION: java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
    It seems that TopLink is referencing then old transaction. Has anyone seen this issue? Any ideas?
    Thanks,
    Darcy Welsh.

    Hello Darcy,
    I'm not exactly sure what is happening and think that a lot more information would be required, so technical support might be your best bet.
    My guess would be that your sessionbean method is hitting an exception in user code that is triggering the transaction to be marked for rollback, and thus not allow any SQL execution. Try putting a try/catch/debug statements in your sessionbean method to find out if any exception are occurring.
    Otherwise more information such as,
    - the complete exception stack trace
    - how are you configuring your session, external connection pooling, which transaction controller, etc., does it work with normal connection pooling
    - what exactly is the sessionbean doing
    - when exactly does the problem occur, are there concurrent process, etc.

  • The transaction is no longer active - Transaction timed out after 30 second

    We have an intermittent error here, and I'm a rookie. The error results in a 500 being sent to the customer every 10th-20th POST and only occurs under heavy load. The heavy loading is over the for the day, but it'll be back.
    My first suspicion was the app code doing transaction work and having database performance problems. But the app is non-transactional and the database is fine. The server farm nodes (4) are all experiencing the problems at equal rates, and the other apps on the farm are fine, so it appears to be app-specific rather than rooted in server state or database state.
    I looked at the stack a little more closely and it appears to be some kind of internal persistence issue, but a completely foreign one to me. We have no Persistent Stores configured, so I don't know where to even start on this puppy.
    EJB Exception occurred during invocation from home: weblogic.ejb.container.internal.StatelessEJBLocalHomeImpl@d1e1f4 threw exception: <1.0.0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
    BEA1-32AE928C966AC66F424D]'. No further JDBC access is allowed within this transaction.
    <1.0.0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
    BEA1-32AE928C966AC66F424D]'. No further JDBC access is allowed within this transaction.
    at org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:3784)
    at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:97)
    at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:83)
    at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:59)
    at org.apache.openjpa.jdbc.kernel.SelectResultObjectProvider.handleCheckedException(SelectResultObjectProvider.java:155)
    at org.apache.openjpa.lib.rop.EagerResultList.<init>(EagerResultList.java:40)
    at org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1219)
    at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:987)
    at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:839)
    at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:770)
    at kodo.kernel.KodoQuery.execute(KodoQuery.java:47)
    at org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:525)
    at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:229)
    at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:269)
    at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
    at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
    at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactionsExcludingApplication(ApproveApplicationHelper.java:167)
    at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactions(ApproveApplicationHelper.java:129)
    at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.stageAction(ApproveApplicationHelper.java:74)
    at com.company.buapp.buslogic.session.ApproveApplicationSessionBean.performAction(ApproveApplicationSessionBean.java:348)
    at sun.reflect.GeneratedMethodAccessor2150.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at weblogic.ejb.container.injection.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:68)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
    at $Proxy365.performAction(Unknown Source)
    at com.company.buapp.buslogic.session.ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.performAction(ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.java:148)
    at com.company.buapp.si.ApplicationWS.performAction(ApplicationWS.java:114)
    at sun.reflect.GeneratedMethodAccessor2149.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:50)
    at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:42)
    at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:247)
    at com.sun.xml.ws.server.sei.SEIInvokerPipe.process(SEIInvokerPipe.java:97)
    at weblogic.wsee.jaxws.MonitoringPipe.process(MonitoringPipe.java:98)
    at com.sun.xml.ws.protocol.soap.ServerMUPipe.process(ServerMUPipe.java:62)
    at com.sun.xml.ws.server.WSEndpointImpl$1.process(WSEndpointImpl.java:139)
    at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:153)
    at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:235)
    at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:97)
    at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:36)
    at weblogic.wsee.jaxws.JAXWSServlet.doPost(JAXWSServlet.java:218)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:226)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:124)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3395)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2140)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2046)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
    java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
    BEA1-32AE928C966AC66F424D]'. No further JDBC access is allowed within this transaction.
    at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:178)
    at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:188)
    at weblogic.jdbc.wrapper.ResultSet.preInvocationHandler(ResultSet.java:57)
    at weblogic.jdbc.wrapper.ResultSet_oracle_jdbc_driver_OracleResultSetImpl.next(Unknown Source)
    at org.apache.openjpa.lib.jdbc.DelegatingResultSet.next(DelegatingResultSet.java:106)
    at org.apache.openjpa.jdbc.sql.ResultSetResult.nextInternal(ResultSetResult.java:210)
    at org.apache.openjpa.jdbc.sql.SelectImpl$SelectResult.nextInternal(SelectImpl.java:2209)
    at org.apache.openjpa.jdbc.sql.AbstractResult.next(AbstractResult.java:168)
    at org.apache.openjpa.jdbc.kernel.SelectResultObjectProvider.next(SelectResultObjectProvider.java:99)
    at org.apache.openjpa.lib.rop.EagerResultList.<init>(EagerResultList.java:35)
    at org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1219)
    at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:987)
    at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:839)
    at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:770)
    at kodo.kernel.KodoQuery.execute(KodoQuery.java:47)
    at org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:525)
    at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:229)
    at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:269)
    at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
    at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
    at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactionsExcludingApplication(ApproveApplicationHelper.java:167)
    at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactions(ApproveApplicationHelper.java:129)
    at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.stageAction(ApproveApplicationHelper.java:74)
    at com.company.buapp.buslogic.session.ApproveApplicationSessionBean.performAction(ApproveApplicationSessionBean.java:348)
    at sun.reflect.GeneratedMethodAccessor2150.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at weblogic.ejb.container.injection.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:68)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
    at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
    at $Proxy365.performAction(Unknown Source)
    at com.company.buapp.buslogic.session.ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.performAction(ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.java:148)
    at com.company.buapp.si.ApplicationWS.performAction(ApplicationWS.java:114)
    at sun.reflect.GeneratedMethodAccessor2149.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:50)
    at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:42)
    at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:247)
    at com.sun.xml.ws.server.sei.SEIInvokerPipe.process(SEIInvokerPipe.java:97)
    at weblogic.wsee.jaxws.MonitoringPipe.process(MonitoringPipe.java:98)
    at com.sun.xml.ws.protocol.soap.ServerMUPipe.process(ServerMUPipe.java:62)
    at com.sun.xml.ws.server.WSEndpointImpl$1.process(WSEndpointImpl.java:139)
    at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:153)
    at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:235)
    at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:97)
    at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:36)
    at weblogic.wsee.jaxws.JAXWSServlet.doPost(JAXWSServlet.java:218)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:226)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:124)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3395)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2140)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2046)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)

    This was actually my first conclusion as well. But when I went to the Data Source for this connection, I found it's a non-transactional driver. That's what made me go back and give the trace a second look. I don't see any references to the Data Source in question. It's OpenJPA stuff and Session persistence stuff.Non-XA drivers can still participate in an XA transaction via a variety of JDBC data source options - for example, labeled "1PC" and "LLR" on the console. (If you want to understand the particulars search for "JTS" or "LLR" in the JDBC edocs).
    You seem to be suggesting maybe the setting can be made in a config doc, possibly of the app itself, right? Right. EJBs have a transaction-timeout attribute.
    As opposed to setting it in the console. WebLogic has a domain wide default transaction-timeout setting that can be set on the console, but I tend not to recommend using it. In addition, there's something called a "deployment plan" which can be used to override some of the common EJB attributes via configuration, but I'm not personally familiar with its usage.
    But isn't the setting vapor if we're using a nonXA driver?No.
    I wonder if this thing couldn't be telling me it's waiting on the persistence subsystem to come available to store simple session data? Sometimes the problem is that there are periodic app requests that are more complex/larger than others. Sometimes the system is simply overloaded, and takes 30 seconds to honor a request that might normally take 10 seconds.
    That other app is all about persistence. What if app2 is sucking some persistence subsystem dry and app 1 is waiting just to store session data? Could be.
    If the nonXA thing really does kill the quick timeout workaround, how could I health-check the persistence subsystem?Don't know. At a wild guess I'd check for CPU's at 100% on all involved serves, and examine database stats.

  • NAMED_SEQUENCEs: The transaction is no longer active

    Hi all,
              I am currently trying to get Petstore 1.3.1 going on WLS 7.0.0.1 an got
              into quite some trouble (btw, does anyone have experience with this
              cofiguration?). After successful deployment in /application I tried the
              "populate database" link on ~/petstore/index.jsp and got:
              java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
                   at weblogic.jdbc.jts.Connection.checkIfRolledBack(Connection.java:541)
                   at weblogic.jdbc.jts.ResultSet.close(ResultSet.java:293)
                   at weblogic.jdbc.rmi.internal.ResultSetImpl.close(ResultSetImpl.java:144)
                   at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:96)
                   at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:87)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResultSet(RDBMSPersistenceManager.java:1797)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResources(RDBMSPersistenceManager.java:1679)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.execGenKeyNamedSequenceTableUpdateAndQuery(RDBMSPersistenceManager.java:1489)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.getNextGenKeyNamedSequenceTable(RDBMSPersistenceManager.java:1307)
                   at com.sun.j2ee.blueprints.address.ejb.AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.ejbCreate(AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.java:1723)
                   at java.lang.reflect.Method.invoke(Native Method)
                   at weblogic.ejb20.manager.DBManager.create(DBManager.java:737)
                   at weblogic.ejb20.manager.DBManager.localCreate(DBManager.java:716)
                   at weblogic.ejb20.internal.EntityEJBLocalHome.create(EntityEJBLocalHome.java:182)
                   at com.sun.j2ee.blueprints.address.ejb.AddressEJB_fvu9sn_LocalHomeImpl.create(AddressEJB_fvu9sn_LocalHomeImpl.java:155)
                   at com.sun.j2ee.blueprints.petstore.tools.populate.AddressPopulator.createAddress(AddressPopulator.java:94)     at com.sun.j2ee.blueprints.petstore.tools.populate.AddressPopulator.access$7(AddressPopulator.java)
                   at com.sun.j2ee.blueprints.petstore.tools.populate.AddressPopulator$1.create(AddressPopulator.java:73)
                   at com.sun.j2ee.blueprints.petstore.tools.populate.XMLDBHandler.endElement(XMLDBHandler.java:145)
                   at org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:595)
                   at com.sun.j2ee.blueprints.petstore.tools.populate.XMLDBHandler.endElement(XMLDBHandler.java:158)
                   at weblogic.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1411)
                   at weblogic.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1613)
                   at weblogic.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1219)
                   at weblogic.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:396)
                   at weblogic.apache.xerces.framework.XMLParser.parse(XMLParser.java:1119)
                   at weblogic.xml.jaxp.WebLogicXMLReader.parse(WebLogicXMLReader.java:135)
                   at weblogic.xml.jaxp.RegistryXMLReader.parse(RegistryXMLReader.java:133)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
                   at com.sun.j2ee.blueprints.petstore.tools.populate.PopulateServlet.populate(PopulateServlet.java:162)
                   at com.sun.j2ee.blueprints.petstore.tools.populate.PopulateServlet.doPost(PopulateServlet.java:118)
                   at com.sun.j2ee.blueprints.petstore.tools.populate.PopulateServlet.doGet(PopulateServlet.java:106)
                   at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
                   at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                   at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:945)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:332)
                   at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:20)
                   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
                   at com.sun.j2ee.blueprints.signon.web.SignOnFilter.doFilter(SignOnFilter.java:151)
                   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
                   at com.sun.j2ee.blueprints.encodingfilter.web.EncodingFilter.doFilter(EncodingFilter.java:77)
                   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
                   at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5366)
                   at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:721)
                   at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3043)
                   at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2468)
                   at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
                   at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
              and similar traces for ContactInfo, CreditCard, Account, Profile, ...
              I nevertheless get to the main screen of the Petstore as if everything
              worked well. In fact, it seems like the DB got populated somewhat
              correctly; only tbe named sequence tables are unchanged (btw: are the
              named sequence tables expected to be auto-created with
              create-default-dbms-tables enabled?). The strange thing is that every
              correct row (in my case having the even IDs) is followd by an all (except the
              odd numbered ID field) "NULL" row. This does not happen in all
              ...EJBTABLEs --- Address and ContactInfo for example are affected, but Profile
              is not.
              It seems as if ordering a rattlesnake would work well, even though more
              of the same type of Execptions appear in the jdbc log. I suspect that the
              trouble will start when the 10 cached ID are exhausted.
              I just tried the Petstore 1.3 example provided with WLS 7.0.0.1 on a Linux
              machine and WLS 7.0 on an NT machine andfound petty much the same
              exception after enabling the jdbc log:
              java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
                   at weblogic.jdbc.jts.Connection.checkIfRolledBack(Connection.java:541)
                   at weblogic.jdbc.jts.ResultSet.close(ResultSet.java:293)
                   at weblogic.jdbc.rmi.internal.ResultSetImpl.close(ResultSetImpl.java:144)
                   at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:96)
                   at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:87)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResultSet(RDBMSPersistenceManager.java:1797)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResources(RDBMSPersistenceManager.java:1679)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.execGenKeyNamedSequenceTableUpdateAndQuery(RDBMSPersistenceManager.java:1489)
                   at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.getNextGenKeyNamedSequenceTable(RDBMSPersistenceManager.java:1307)
                   at com.sun.j2ee.blueprints.po.address.ejb.AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.ejbCreate(AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.java:1755)
                   at java.lang.reflect.Method.invoke(Native Method)
                   at weblogic.ejb20.manager.DBManager.create(DBManager.java:737)
                   at weblogic.ejb20.manager.DBManager.localCreate(DBManager.java:716)
                   at weblogic.ejb20.internal.EntityEJBLocalHome.create(EntityEJBLocalHome.java:182)
                   at com.sun.j2ee.blueprints.po.address.ejb.AddressEJB_fvu9sn_LocalHomeImpl.create(AddressEJB_fvu9sn_LocalHomeImpl.java:86)
                   at com.sun.j2ee.blueprints.po.purchaseorder.ejb.PurchaseOrderHelper.persistPoCMRInfo(PurchaseOrderHelper.java:116)
                   at com.sun.j2ee.blueprints.po.purchaseorder.ejb.PurchaseOrderHelper.persistPO(PurchaseOrderHelper.java:164)     at com.sun.j2ee.blueprints.opc.ejb.MsgBean.doWork(MsgBean.java:103)
                   at com.sun.j2ee.blueprints.opc.ejb.MsgBean.onMessage(MsgBean.java:72)
                   at weblogic.ejb20.internal.MDListener.execute(MDListener.java:348)
                   at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:282)
                   at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:263)
                   at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2309)
                   at weblogic.jms.client.JMSSession.execute(JMSSession.java:2232)
                   at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
                   at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
              Is there a problem with my general setup maybe, or is this exception to
              be ignored? Is that a known issue with Petstore 1.3/WLS7?
              Kai
              

    Tyson Norris wrote:
    Hello -
    We are attempting to use a design where a connection will remain in use over multiple
    transactions.
    Is there any way to get weblogic to allow this?No, at least not jts connections. Non-XA connections need our management to
    ensure all the work gets committed or rolled back atomically. It doesn't
    cost anything to always obtain jts connections in the context of the tx
    they are needed.
    Besides XA, you could get a plain non-transactional connection and do your
    own jdbc commits/rollbacks...
    Joe
    >
    We are currently experiencing the stack trace below, when a database read is
    attempting to use the same connection as the previously committed tx.
    Thanks for any advice.
    Tyson
    org.springframework.jdbc.UncategorizedSQLException: (HibernateAccessor): encountered
    SQLException [The transaction is no longer active - status: 'Committed'. No further
    JDBC access is allowed within this transaction.]; nested exception is java.sql.SQLException:
    The transaction is no longer active - status: 'Committed'. No further JDBC access
    is allowed within this transaction. java.sql.SQLException: The transaction is
    no longer active - status: 'Committed'. No further JDBC access is allowed within
    this transaction. at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:118)
    at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:127)
    at weblogic.jdbc.wrapper.Connection.prepareStatement(Connection.java:324) at weblogic.jdbc.wrapper.JTSConnection.prepareStatement(JTSConnection.java:426)
    at com.benefitpoint.cmp.hibernate.AbstractDataManager$2.doInHibernate(AbstractDataManager.java:501)
    at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:150)
    at com.benefitpoint.cmp.hibernate.AbstractDataManager.execRawSqlPreparedStatement(AbstractDataManager.java:568)
    at

  • Petstore 1.3.1 NAMED_SEQUENCE problem: "The transaction is no longer active"

    Hi all,
    I am currently trying to get Petstore 1.3.1 going on WLS 7.0.0.1 an got
    into quite som trouble (btw, does anyone have expereince with this
    cofiguration?). After successful deployment in /application I tried the
    "populate database" link on ~/petstore/index.jsp and got:
    java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
         at weblogic.jdbc.jts.Connection.checkIfRolledBack(Connection.java:541)
         at weblogic.jdbc.jts.ResultSet.close(ResultSet.java:293)
         at weblogic.jdbc.rmi.internal.ResultSetImpl.close(ResultSetImpl.java:144)
         at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:96)
         at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:87)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResultSet(RDBMSPersistenceManager.java:1797)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResources(RDBMSPersistenceManager.java:1679)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.execGenKeyNamedSequenceTableUpdateAndQuery(RDBMSPersistenceManager.java:1489)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.getNextGenKeyNamedSequenceTable(RDBMSPersistenceManager.java:1307)
         at com.sun.j2ee.blueprints.address.ejb.AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.ejbCreate(AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.java:1723)
         at java.lang.reflect.Method.invoke(Native Method)
         at weblogic.ejb20.manager.DBManager.create(DBManager.java:737)
         at weblogic.ejb20.manager.DBManager.localCreate(DBManager.java:716)
         at weblogic.ejb20.internal.EntityEJBLocalHome.create(EntityEJBLocalHome.java:182)
         at com.sun.j2ee.blueprints.address.ejb.AddressEJB_fvu9sn_LocalHomeImpl.create(AddressEJB_fvu9sn_LocalHomeImpl.java:155)
         at com.sun.j2ee.blueprints.petstore.tools.populate.AddressPopulator.createAddress(AddressPopulator.java:94)     at com.sun.j2ee.blueprints.petstore.tools.populate.AddressPopulator.access$7(AddressPopulator.java)
         at com.sun.j2ee.blueprints.petstore.tools.populate.AddressPopulator$1.create(AddressPopulator.java:73)
         at com.sun.j2ee.blueprints.petstore.tools.populate.XMLDBHandler.endElement(XMLDBHandler.java:145)
         at org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:595)
         at com.sun.j2ee.blueprints.petstore.tools.populate.XMLDBHandler.endElement(XMLDBHandler.java:158)
         at weblogic.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1411)
         at weblogic.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1613)
         at weblogic.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1219)
         at weblogic.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:396)
         at weblogic.apache.xerces.framework.XMLParser.parse(XMLParser.java:1119)
         at weblogic.xml.jaxp.WebLogicXMLReader.parse(WebLogicXMLReader.java:135)
         at weblogic.xml.jaxp.RegistryXMLReader.parse(RegistryXMLReader.java:133)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:371)
         at com.sun.j2ee.blueprints.petstore.tools.populate.PopulateServlet.populate(PopulateServlet.java:162)
         at com.sun.j2ee.blueprints.petstore.tools.populate.PopulateServlet.doPost(PopulateServlet.java:118)
         at com.sun.j2ee.blueprints.petstore.tools.populate.PopulateServlet.doGet(PopulateServlet.java:106)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:945)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:332)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:20)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         at com.sun.j2ee.blueprints.signon.web.SignOnFilter.doFilter(SignOnFilter.java:151)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         at com.sun.j2ee.blueprints.encodingfilter.web.EncodingFilter.doFilter(EncodingFilter.java:77)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5366)
         at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:721)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3043)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2468)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
    and similar traces for ContactInfo, CreditCard, Account, Profile, ...
    I nevertheless get to the main screen of the Petstore as if everything
    worked well. In fact, it seems like the DB got populated somewhat
    correctly; only tbe named sequence tables are unchanged (btw: are the
    named sequences expected to be auto-created with
    create-default-dbms-tables enabled ?). The strange thing is that every
    correct row (in my case having the even IDs) is followd by an all (except the
    odd numbered ID field) "NULL" row. This does not happen in all
    ...EJBTABLEs --- Address and ContactInfo for example are affected, but Profile
    is not.
    It seems as if ordering a rattlesnake would work well, even though more
    of the same type of Execptions appear in the jdbc log. I suspect that the
    trouble will start when the 10 cached ID are exhausted.
    Any ideas?
    Kai

    I just tried the Petstore 1.3 example provided with WLS 7.0.0.1 and found
    petty much the same exception after enabling the jdbc log:
    java.sql.SQLException: The transaction is no longer active (status = Committed). No further JDBC access is allowed within this transaction.
         at weblogic.jdbc.jts.Connection.checkIfRolledBack(Connection.java:541)
         at weblogic.jdbc.jts.ResultSet.close(ResultSet.java:293)
         at weblogic.jdbc.rmi.internal.ResultSetImpl.close(ResultSetImpl.java:144)
         at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:96)
         at weblogic.jdbc.rmi.SerialResultSet.close(SerialResultSet.java:87)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResultSet(RDBMSPersistenceManager.java:1797)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.releaseResources(RDBMSPersistenceManager.java:1679)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.execGenKeyNamedSequenceTableUpdateAndQuery(RDBMSPersistenceManager.java:1489)
         at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.getNextGenKeyNamedSequenceTable(RDBMSPersistenceManager.java:1307)
         at com.sun.j2ee.blueprints.po.address.ejb.AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.ejbCreate(AddressEJB_fvu9sn__WebLogic_CMP_RDBMS.java:1755)
         at java.lang.reflect.Method.invoke(Native Method)
         at weblogic.ejb20.manager.DBManager.create(DBManager.java:737)
         at weblogic.ejb20.manager.DBManager.localCreate(DBManager.java:716)
         at weblogic.ejb20.internal.EntityEJBLocalHome.create(EntityEJBLocalHome.java:182)
         at com.sun.j2ee.blueprints.po.address.ejb.AddressEJB_fvu9sn_LocalHomeImpl.create(AddressEJB_fvu9sn_LocalHomeImpl.java:86)
         at com.sun.j2ee.blueprints.po.purchaseorder.ejb.PurchaseOrderHelper.persistPoCMRInfo(PurchaseOrderHelper.java:116)
         at com.sun.j2ee.blueprints.po.purchaseorder.ejb.PurchaseOrderHelper.persistPO(PurchaseOrderHelper.java:164)     at com.sun.j2ee.blueprints.opc.ejb.MsgBean.doWork(MsgBean.java:103)
         at com.sun.j2ee.blueprints.opc.ejb.MsgBean.onMessage(MsgBean.java:72)
         at weblogic.ejb20.internal.MDListener.execute(MDListener.java:348)
         at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:282)
         at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:263)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2309)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:2232)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
    Is there a problem with my general setup maybe, or is this exception to
    be ignored?
    Kai

  • WLS 6.1 The transaction is no longer active...

    Hello guys,
    I have a litle problem. We have an application deployed on WLS 5.1. It is working perfect for more than an year now. We recently migrated to WLS 6.1, which went pretty painlessly. The only problem I figured out is a transaction timeout on one of our EJBs. It's a stateless one and does access a database. The database response time seems to exceed 30 secs and the container just rolls the transaction back and raises an exception:
    The transaction is no longer active (status = Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
    Name=[EJB com.deuba.pricemodel.sessionbean.FXRateManagerEJB.populate()],Xid=46:1c5c7ecedef996e9(6195252),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[ExecuteThread: '9' for queue: 'default',5,Thread Group for Queue: 'default'],ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=started,assigned=none),SCInfo[npm2000+npm2000_1]=(state=active),properties=({weblogic.transaction.name=[EJB com.deuba.pricemodel.sessionbean.FXRateManagerEJB.populate()], weblogic.jdbc=t3://10.72.70.17:7201}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=npm2000_1+10.72.70.17:7201+npm2000+, Resources={})],CoordinatorURL=npm2000_1+10.72.70.17:7201+npm2000+)]). No further JDBC access is allowed  within this transaction.
    com.deuba.pricemodel.sessionbean.FXRateManagerEJB_9hbfr9_Impl populate rolled back. Reason: The transaction is no longer active (status = Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
    Name=[EJB com.deuba.pricemodel.sessionbean.FXRateManagerEJB.populate()],Xid=46:1c5c7ecedef996e9(6195252),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[ExecuteThread: '9' for queue: 'default',5,Thread Group for Queue: 'default'],ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=started,assigned=none),SCInfo[npm2000+npm2000_1]=(state=active),properties=({weblogic.transaction.name=[EJB com.deuba.pricemodel.sessionbean.FXRateManagerEJB.populate()], weblogic.jdbc=t3://10.72.70.17:7201}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=npm2000_1+10.72.70.17:7201+npm2000+, Resources={})],CoordinatorURL=npm2000_1+10.72.70.17:7201+npm2000+)]). No further JDBC access is allowed  within this transaction.
    java.sql.SQLException: The transaction is no longer active (status = Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 secondsName=[EJB com.deuba.pricemodel.sessionbean.FXRateManagerEJB.populate()],Xid=46:1c5c7ecedef996e9(6195252),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[ExecuteThread: '9' for queue: 'default',5,Thread Group for Queue: 'default'],ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=started,assigned=none),SCInfo[npm2000+npm2000_1]=(state=active),properties=({weblogic.transaction.name=[EJB com.deuba.pricemodel.sessionbean.FXRateManagerEJB.populate()], weblogic.jdbc=t3://10.72.70.17:7201}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=npm2000_1+10.72.70.17:7201+npm2000+, Resources={})],CoordinatorURL=npm2000_1+10.72.70.17:7201+npm2000+)]). No further JDBC access is allowed  within this transaction.
            at weblogic.jdbc.jts.Connection.checkIfRolledBack(Connection.java:508)
            at weblogic.jdbc.jts.Statement.getResultSet(Statement.java:408)
            at weblogic.jdbc.rmi.internal.StatementImpl.getResultSet(StatementImpl.java:215)
            at weblogic.jdbc.rmi.SerialStatement.getResultSet(SerialStatement.java:322)
            at com.deuba.pricemodel.pool.FXRatePool.populate(Unknown Source)
            at com.deuba.pricemodel.sessionbean.FXRateManagerEJB.populate(Unknown Source)
            at com.deuba.pricemodel.sessionbean.FXRateManagerEJB_9hbfr9_EOImpl.populate(FXRateManagerEJB_9hbfr9_EOImpl.java:121)
            at jsp_servlet._system._qa.__fx_rate._jspService(__fx_rate.java:290)
            at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
            at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
            at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
            at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2495)
            at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2204)
            at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
            at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)One problem could be, that the EJBs are compiled with the WLS 5.1 ejbc and also the deployment descriptors are 5.1 compliant. Does anyone have any clue?
    Tx in advance,
    Anton Maleev
    Software Engineer
    Frankfurt
    [email protected]

    Take a look at this link:
    http://e-docs.bea.com/wls/docs61////javadocs/weblogic/management/configuration/JTAMBean.html#getTimeoutSeconds()
    You'll notice the default transaction timeout in WLS 6.1 is 30 seconds. For container managed you
    can set this timeout in the trans-timeout-seconds attribute of the weblogic-ejb-xml.jar file.

  • "transaction is no longer active" exception.... why?

    I'm trying to get a transaction working with my control, but I keep getting the following SQL exception:
    "The transaction is no longer active - status: 'Committed'. No further JDBC access is allowed within this transaction."
    I have a main jdbc controller that calls other jdbc controlers. The method in the main controller has the following annotation:
    @TransactionAttribute(value=TransactionAttributeType.REQUIRES_NEW, rollbackOnCheckedException=true)
    Then anootation on the methods in the subcontroler:
    @TransactionAttribute(value=TransactionAttributeType.REQUIRED, rollbackOnCheckedException=true)
    I try to call the method in the second controller twice from the main controller. The first time I have it inserts a record into the database and the second time it causes an exception (on purpose for testing the rollback). But instead of rolling back the first record gets inserted into the database and the second record causes the "transaction is no longer active" exception.
    What am I doing wrong?

    Thanks Vimala,
    I did look at it and I'm using it to simulate the same thing I'm trying to do. Here is what I did:
    I changed the insertGroup method in the CustomControlImpl.java file to the following:
    @TransactionAttribute(value=TransactionAttributeType.REQUIRES_NEW,rollbackOnCheckedException=true)     
    public void insertGroup(String name, String description) throws SQLException
    try{
    int result = dataControl.insertGroup("1","1");
    result = dataControl.insertGroup("This name is way too long and will cause an exception","2");
    }catch(SQLException e){
    System.out.println("**************** Throwing sql exception");
    throw e;
    I would like the excepion caused by the second insert to rollback everything in the try block and as a result nothing will be inserted int the database. Can this be done?
    Edited by cerlendson at 09/11/2007 9:45 AM
    Edited by cerlendson at 09/11/2007 10:12 AM

  • The transaction is no longer active - status: 'Committed'.

    Hello -
    We are attempting to use a design where a connection will remain in use over multiple
    transactions.
    Is there any way to get weblogic to allow this?
    We are currently experiencing the stack trace below, when a database read is
    attempting to use the same connection as the previously committed tx.
    Thanks for any advice.
    Tyson
    org.springframework.jdbc.UncategorizedSQLException: (HibernateAccessor): encountered
    SQLException [The transaction is no longer active - status: 'Committed'. No further
    JDBC access is allowed within this transaction.]; nested exception is java.sql.SQLException:
    The transaction is no longer active - status: 'Committed'. No further JDBC access
    is allowed within this transaction. java.sql.SQLException: The transaction is
    no longer active - status: 'Committed'. No further JDBC access is allowed within
    this transaction. at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:118)
    at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:127)
    at weblogic.jdbc.wrapper.Connection.prepareStatement(Connection.java:324) at weblogic.jdbc.wrapper.JTSConnection.prepareStatement(JTSConnection.java:426)
    at com.benefitpoint.cmp.hibernate.AbstractDataManager$2.doInHibernate(AbstractDataManager.java:501)
    at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:150)
    at com.benefitpoint.cmp.hibernate.AbstractDataManager.execRawSqlPreparedStatement(AbstractDataManager.java:568)
    at

    Tyson Norris wrote:
    Hello -
    We are attempting to use a design where a connection will remain in use over multiple
    transactions.
    Is there any way to get weblogic to allow this?No, at least not jts connections. Non-XA connections need our management to
    ensure all the work gets committed or rolled back atomically. It doesn't
    cost anything to always obtain jts connections in the context of the tx
    they are needed.
    Besides XA, you could get a plain non-transactional connection and do your
    own jdbc commits/rollbacks...
    Joe
    >
    We are currently experiencing the stack trace below, when a database read is
    attempting to use the same connection as the previously committed tx.
    Thanks for any advice.
    Tyson
    org.springframework.jdbc.UncategorizedSQLException: (HibernateAccessor): encountered
    SQLException [The transaction is no longer active - status: 'Committed'. No further
    JDBC access is allowed within this transaction.]; nested exception is java.sql.SQLException:
    The transaction is no longer active - status: 'Committed'. No further JDBC access
    is allowed within this transaction. java.sql.SQLException: The transaction is
    no longer active - status: 'Committed'. No further JDBC access is allowed within
    this transaction. at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:118)
    at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:127)
    at weblogic.jdbc.wrapper.Connection.prepareStatement(Connection.java:324) at weblogic.jdbc.wrapper.JTSConnection.prepareStatement(JTSConnection.java:426)
    at com.benefitpoint.cmp.hibernate.AbstractDataManager$2.doInHibernate(AbstractDataManager.java:501)
    at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:150)
    at com.benefitpoint.cmp.hibernate.AbstractDataManager.execRawSqlPreparedStatement(AbstractDataManager.java:568)
    at

  • Java.sql.SQLException:The trans ... no longer active - status: 'Unknown'

    Oracle DBA team received a stack trace from our developers about an error generated by a JAVA appilcation using a WebLogic 8.1 application server and a Oracle 9.2.0.8 (RAC) database server with a Linux 2.4 OS. No database errors were logged into the database alert or listener logs, and no trace files were generated by database server on the same day. Developers are still looking for a cause.
    Here is the info provided to us by the developers:
    Nested StackTrace:
    java.sql.SQLException:The transaction is no longer active - status: 'Unknown'. No further JDBC access is allowed within this transaction.
         weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:219)
         weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:228)
         weblogic.jdbc.wrapper.ResultSet.getMetaData(ResultSet.java:184)
         us.tx.state.rrc.common.util.QueryUtils.getSimpleResults(QueryUtils.java:455)
         us.tx.state.rrc.common.util.QueryUtils.executeSimplePS(QueryUtils.java:373)
         us.tx.state.rrc.pr.events.valueobject.BaseLeaseEvent.loadEventData(BaseLeaseEvent.java:182)
         us.tx.state.rrc.pr.events.valueobject.BaseLeaseEvent.loadEvents(BaseLeaseEvent.java:194)
         us.tx.state.rrc.pr.events.valueobject.BaseLeaseEvent.getEvents(BaseLeaseEvent.java:161)
         us.tx.state.rrc.pr.events.PREventManager.getLeaseComingleEvents(PREventManager.java:104)
         us.tx.state.rrc.pr.events.PREventManager.getAllEvents(PREventManager.java:81)
         us.tx.state.rrc.pr.events.process.AutoResolveProcess.createTrxs(AutoResolveProcess.java:80)
         us.tx.state.rrc.process.ejb.session.ProcessManagerSessionBean.initProcess(ProcessManagerSessionBean.java:427)
    Application reportedly ran okay when resubmitted later on the same day without any other changes to the environment except a RMAN hot full backup finished before the second run. Developers have been unable to reproduce application error. Any ideas on where the developers should look for a more definitive definition of application errors?

    That message is a WLS-resident event. It means that the WLS-managed transaction
    for which the thread/JDBC connection was operating, has already finished, whether by
    having completed normally or having been rolled back.

  • You are trying to access a page that is no longer active(urgent)

    hi
    i m facing a serious issue, in Internet Explorer 8, when i try to login, it gives me this error "You are trying to access a page that is no longer active.
    - The referring page may have come from a previous session. Please select Home to proceed."
    i have googled it, searched it hr at OTN but i couldn't find any promising solution
    Windows Server 2008 Enterprise 64bit
    EBS 12.1.1 (single tier/node)
    urgent help required
    thanks

    i m facing a serious issue, in Internet Explorer 8, when i try to login, it gives me this error "You are trying to access a page that is no longer active.
    - The referring page may have come from a previous session. Please select Home to proceed."Please see these docs.
    11i/R12 How to Debug "Transaction Context Is Lost" or "You are trying to access a page that is no longer active" [ID 456906.1]
    R12: Error "You are trying to access a page that is no longer active" When Attempting to Access Through Internet Explorer [ID 968839.1]
    Session Error Raised Direct After Login when Using Two-Letter Domain Segments [ID 420573.1]
    Please also run AutoConfig and make sure it completes successfully.
    Thanks,
    Hussein

Maybe you are looking for

  • Need help with INSERT and WITH clause

    I wrote sql statement which correctly work, but how i use this statment with INSERT query? NEED HELP. when i wrote insert i see error "ORA 32034: unsupported use of with clause" with t1 as( select a.budat,a.monat as period,b.vtweg, c.gjahr,c.buzei,c.

  • Cannot install CRS on AIX 5.3 ML09 with HACMP 5.4.1

    We have a two-node HACMP cluster, it's handling the networking and storage. (raw LV's) It's a fairly simple setup. I followed the instructions in document 404474.1 "Status of Certification of Oracle Clusterware with HACMP 5.3 & 5.4" to ensure it's co

  • How to find sum of ROWS in advanced table...............

    hi all, i have a requirement where we have to calculate sum of the row values in advanced table when i click on ADDROW button a new row is displayed after entering the values i need to get the sum of values that i enter into the new row i know about

  • Number of characters in a line of ABAP WD textedit

    Hi guys, I want to fix the number of characters you can write into the textedit component of my abap web dynpro. The problem is, that when i set cols to 73 ( that the ammount of characters i want to allow in one line) and then set the wrapping mode t

  • Add vendor number and vendor name to the SAP Standard CO/PS Line item repor

    Hi how i can post PS commitment line items and cost center and orders commitment line items The SAP standard reports are: CJI5 PS Commitment Line items KSB2 Cost Centre Commitment Line Items KOB1 Orders Actual Line Items KOB2 Orders Commitment Line I