Fuego.transaction.DatabaseException: in Automatic Activity

I am getting this exception when i tried to execute the process that is deployed on weblogic BPM engine. Please help
An uexpected error occurred while trying to execute an automatic task. However, pending automatic tasks will continue to be executed. Details:\n"
An error occurred while accesing the database.
Detail:SQL statement: ' SELECT DUETIME, ID, PROCESSID, INSTID, THREADID, ANCESTORTHREADID, TSTAMP, TYPE, ACTIVITYNAME, ORIGINPROCESSDN, REALTHREADID, NETYPE, PRIORITY, LATER, DATA FROM PTODOITEMS WHERE DUETIME = 2009-10-01 13:23:25.0 AND PROCESSID = 724 AND ID = 2690031 FOR UPDATE'
Caused by: [BEA][Oracle JDBC Driver][Oracle]ORA-01591: lock held by in-doubt distributed transaction 4.25.3745
fuego.transaction.DatabaseException: An error occurred while accesing the database.
Detail:SQL statement: ' SELECT DUETIME, ID, PROCESSID, INSTID, THREADID, ANCESTORTHREADID, TSTAMP, TYPE, ACTIVITYNAME, ORIGINPROCESSDN, REALTHREADID, NETYPE, PRIORITY, LATER, DATA FROM PTODOITEMS WHERE DUETIME = 2009-10-01 13:23:25.0 AND PROCESSID = 724 AND ID = 2690031 FOR UPDATE'
     at fuego.server.persistence.jdbc.JdbcToDoItemPersMgr.getToDoItem(JdbcToDoItemPersMgr.java:412)
     at fuego.server.persistence.Persistence.getToDoItem(Persistence.java:501)
     at fuego.ejbengine.ItemExecutionBean.find(ItemExecutionBean.java:149)
     at fuego.ejbengine.ItemExecutionBean.access$000(ItemExecutionBean.java:51)
     at fuego.ejbengine.ItemExecutionBean$1.execute(ItemExecutionBean.java:203)
     at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
     at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
     at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
     at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
     at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
     at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
     at fuego.ejbengine.ItemExecutionBean.processMessage(ItemExecutionBean.java:198)
     at fuego.ejbengine.ItemExecutionBean.onMessage(ItemExecutionBean.java:110)
     at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
     at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
     at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
     at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4547)
     at weblogic.jms.client.JMSSession.execute(JMSSession.java:4233)
     at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3709)
     at weblogic.jms.client.JMSSession.access$000(JMSSession.java:114)
     at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5058)
     at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
     at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
     at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: java.sql.SQLException: [BEA][Oracle JDBC Driver][Oracle]ORA-01591: lock held by in-doubt distributed transaction 4.25.3745
     at weblogic.jdbc.base.BaseExceptions.createException(Unknown Source)
     at weblogic.jdbc.base.BaseExceptions.getException(Unknown Source)
     at weblogic.jdbc.oracle.OracleImplStatement.execute(Unknown Source)
     at weblogic.jdbc.base.BaseStatement.commonExecute(Unknown Source)
     at weblogic.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source)
     at weblogic.jdbc.base.BasePreparedStatement.executeQuery(Unknown Source)
     at weblogic.jdbcx.base.BasePreparedStatementWrapper.executeQuery(Unknown Source)
     at weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:128)
     at fuego.jdbc.FaultTolerantPreparedStatement.executeQuery(FaultTolerantPreparedStatement.java:598)
     at fuego.server.persistence.jdbc.JdbcToDoItemPersMgr.getToDoItem(JdbcToDoItemPersMgr.java:395)
     ... 23 more

I too had the same issue.
Was getting Caused by: [BEA][Oracle JDBC Driver][Oracle]ORA-01591: lock held by in-doubt distributed transaction 29.78.34497 exception logs.
This is because with PTODOITEMS table of ENGINEDB. PTODOITEMS would be having more # of records caused due to deadlock transition id 29.78.34497
Due to this engine server go to warning / admin state rather than running and the engine logs were getting rolled out very fast.
Oracle DBA can be contacted and ran select local_tran_id, state from dba_2pc_pending to see if transaction 29.78.34497 exists in the resultset.
And ‘rollback force 'local_tran_id' (for eg. rollback force 29.78.34497; ) needs to be executed to free the table.
Once rollback force 29.78.34497 is executed, could see count of records in PTODOITEMS getting gradually decreased and engine servers comes to running state.
Yes, as Dan has mentioned, couldn't identify the root cause which was causing this deadlock.
I believe the latest patch 10gR3 MP2 100844/100878 has resolved this issue.

Similar Messages

  • WebService call from Automatic Activity

    hi all,
    my automatic activity consume the webservice. then my work flow stop in that activity and i found the following error message inside my log.
    actually my webservice is working properly even my BPM workflow stop there. And there is not other code except webservice call.
    The task could not be successfully executed.
    Reason: 'org.xml.sax.SAXParseException: Premature end of file.'.
    Caused by: Premature end of file.
    fuego.lang.ComponentExecutionException: The task could not be successfully executed.
    Reason: 'org.xml.sax.SAXParseException: Premature end of file.'.
         at fuego.soaptype.SoapObject.invoke(SoapObject.java:321)
         at fuego.lang.Invokeable.invokeImpl(Invokeable.java:234)
         at fuego.lang.Invokeable.invokeDynamic(Invokeable.java:188)
         at Stars21BPM.Intray.Default_1_0.Instance.CIL_automatic(Instance.xcdl:12)
         at Stars21BPM.Intray.Default_1_0.Instance.CIL_automatic(Instance.xcdl)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at fuego.component.ExecutionThreadContext.invokeMethod(ExecutionThreadContext.java:512)
         at fuego.component.ExecutionThreadContext.invokeMethod(ExecutionThreadContext.java:273)
         at fuego.fengine.FEEngineExecutionContext.invokeMethodAsCil(FEEngineExecutionContext.java:219)
         at fuego.server.execution.EngineExecutionContext.runCil(EngineExecutionContext.java:1280)
         at fuego.server.execution.microactivity.ComponentExecutionMicroActivity.runCil(ComponentExecutionMicroActivity.java:126)
         at fuego.server.execution.microactivity.ComponentExecutionMicroActivity.execute(ComponentExecutionMicroActivity.java:84)
         at fuego.server.execution.microactivity.MicroActivityEngineExecutionHandler.executeActivity(MicroActivityEngineExecutionHandler.java:57)
         at fuego.server.execution.ImmediateActivity.execute(ImmediateActivity.java:42)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.DefaultEngineExecution.executeAutomaticWork(DefaultEngineExecution.java:62)
         at fuego.server.execution.EngineExecution.executeAutomaticWork(EngineExecution.java:42)
         at fuego.server.execution.ToDoItem.executeAutomaticWork(ToDoItem.java:251)
         at fuego.server.execution.ToDoItem.run(ToDoItem.java:536)
         at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:775)
         at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:755)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:142)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:134)
         at fuego.fengine.ToDoQueueThread$PrincipalWrapper.processBatch(ToDoQueueThread.java:446)
         at fuego.component.ExecutionThread.work(ExecutionThread.java:839)
         at fuego.component.ExecutionThread.run(ExecutionThread.java:408)
    Caused by: org.xml.sax.SAXParseException: Premature end of file.
         at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
         at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
         at javax.xml.parsers.SAXParser.parse(Unknown Source)
         at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
         at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2765)
         at org.apache.axis.client.Call.invoke(Call.java:2748)
         at org.apache.axis.client.Call.invoke(Call.java:2424)
         at org.apache.axis.client.Call.invoke(Call.java:2347)
         at org.apache.axis.client.Call.invoke(Call.java:1804)
         at fuego.soaptype.SoapCall.invoke(SoapCall.java:234)
         at fuego.soaptype.SoapObject.invoke(SoapObject.java:309)
         ... 32 more

    Hi waiphyo, did you find the reason of this problem? I'm getting the same error on my Enterprise Server. When I launch, in studio, the deployed webservices, the wsdl is rendered fine, but on server i got this error...
    org.xml.sax.SAXParseException: Premature end of file.
         at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
         at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
         at javax.xml.parsers.SAXParser.parse(Unknown Source)
         at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
         at org.apache.axis.server.AxisServer.initSOAPConstants(AxisServer.java:345)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:279)
         at fuego.soaptype.AxisSoapService.invoke(AxisSoapService.java:357)
         at fuego.soaptype.AxisSoapService.invoke(AxisSoapService.java:122)
         at fuego.webservices.HttpSoapListener.process(HttpSoapListener.java:206)
         at fuego.http.HttpExecution$1.run(HttpExecution.java:71)
         at fuego.component.Message.process(Message.java:576)
         at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:780)
         at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:755)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:142)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:134)
         at fuego.http.HttpExecution$HttpPrincipal.processBatch(HttpExecution.java:190)
         at fuego.component.ExecutionThread.work(ExecutionThread.java:839)
         at fuego.component.ExecutionThread.run(ExecutionThread.java:408)
    thanks

  • ERROR: cannot grab an automatic activity

    Hi,
    I am trying to showcase the GRAB activity. I am able to grab from a timer wait and interactive. I wanted to depict the GRAB from an automatic activity. To simlate a 'long running' automatic activity, i put a thread.sleep() (wait) in it.
    Can anyone let me know if it is an expected behavior ? (this being a thread.sleep for wait). And if yes, how can i simulate a long-running automatic which can be grabbed?
    Regards,
    user8702013
    PS: when i try to grab the above activity, i get an error as below:
    Instance '/Process#Default-1.0/1/0' could not be grabbed in activity 'Automatic2'. Details:
    Instance '/Process#Default-1.0/1/0' could not be locked because participant 'Server' is currently locking it.
    fuego.papi.exception.CannotLockInstanceException: Instance '/Process#Default-1.0/1/0' could not be locked because participant 'Server' is currently locking it.
         at fuego.server.ProcInstOwner.createLockException(ProcInstOwner.java:119)
         at fuego.server.AbstractInstanceService.getLocked(AbstractInstanceService.java:148)
         at fuego.server.execution.EngineExecutionContext.acquireCurrentInstance(EngineExecutionContext.java:1692)
         at fuego.server.execution.EngineExecutionContext.preImmediateExecution(EngineExecutionContext.java:1509)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:295)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.DefaultEngineExecution.executeWithoutComponentImmediate(DefaultEngineExecution.java:199)
         at fuego.server.execution.EngineExecution.executeWithoutComponentImmediate(EngineExecution.java:95)
         at fuego.server.AbstractProcessBean.instanceGrab(AbstractProcessBean.java:3947)
         at fuego.server.AbstractProcessBean.instancesGrab(AbstractProcessBean.java:2140)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at fuego.lang.JavaClass.invokeMethod(JavaClass.java:1410)
         at fuego.lang.JavaObject.invoke(JavaObject.java:227)
         at fuego.component.Message.process(Message.java:585)
         at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:780)
         at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:755)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:142)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:134)
         at fuego.fengine.FEngineProcessBean.processBatch(FEngineProcessBean.java:244)
         at fuego.component.ExecutionThread.work(ExecutionThread.java:839)
         at fuego.component.ExecutionThread.run(ExecutionThread.java:408)

    I'm not sure there's a good answer to your question. Grabbing from an automatic activity seems counter productive to me. I must ask why do you want to "Showcase" grabbing from an automatic activity anyway?
    Automatics shouldn't take long time to run and so there shouldn't be a need to grab them. If the automatic will take a long time, they need to be divided up in to smaller work units. This can be done in a split-n/join. Long running threads will time-out. You don't want to hang up engine threads in an automatic. I would think long-running activities can be broken down into shorter running work units. It would be better to show grabbing from an exception handling routine. This is where problematic automatics should end up if they are taking to long or need to be grabbed and moved do to some problem.
    HTH

  • 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.

  • Aborting an Automatic Activity from OBPM 10GR3 workspace

    Hi all,
    I can abort Interactive Activities from the OBPM 10GR3 workspace just by selecting that instance, the selecting the action as ABORT from the BULK ACTIONS on the right hand side and the entire instance is aborted.
    But how do I abort Automatic Activities from the OBPM 10GR3 workspace?
    When my instance arrives at an automatic activity, I am unable to abort it from the BPM workspace.
    There is no option when you right click an Automatic Activity and select RUNTIME , which says, "If enabled, the instance can be aborted by the user".
    So how do we do that ( from the OBPM 10GR3 Workspace)?

    The "If enabled, the instance can be aborted by the user" needs to be selected when you abort via PAPI...
    Since aotumatic activitys do not appear in the workspace you cannot abort them from there.
    You can connect via PAPI, find the instance and abort it from another instance.
    Even though must automatic activitys are built so they finish before you can even go and abort them.
    I think its a strange design to have an aotumatic activity that is up long enough for you to cancel it but as i said above...
    1) Select abortable on the activity.
    2) Find the instance and abort
    Fuego.Papi.InstanceFilter ifilter = new InstanceFilter();
    ProcessService.connectTo(url : Fuego.Server.directoryURL, user :<username>, password : <password>);
    ifilter.create(processService : ProcessService);
    ifilter.searchScope = new SearchScope(participantScope : ParticipantScope.ALL , statusScope : StatusScope.ONLY_INPROCESS);
    //Notice i write public variable and not instance variable
    ifilter.addAttributeTo(variable : <public variable (such as description or one of your own)>, comparator : Comparison.<the one that fits you>, value : <value>);
    Fuego.Papi.Instance[] cInstances = ProcessService.getInstancesByFilter(filter : ifilter);
    foreach (instance in cInstances)
    //Second type of filtering (checking current activity and process), you can check just the activity name if its a unique name
    if (instance.activityName == <aotumatic activity name> && instance.processId.contains(regexp : '/<process name>/'))
    instance.abort();
    I use a similer code snippet to remove Interactive activities.
    Just notice that you filter only the instances you really want to take down.

  • Using ProcessService in Automatic Activity

    I want to use the ProcessService inside an Automatic Activity to search for a process instance already dealing with a contract (no 2 or more process instances are allowed to work on the same contract). The following code works perfectly:
    ProcessService ps;
    ps.connectTo(url : Fuego.Server.directoryURL, user : "pelo", password : "pelo");
    InstanceFilter instanceFilter;
    instanceFilter.create(processService : ps);
    SearchScope searchScope =
        new SearchScope(ParticipantScope.ALL,StatusScope.ONLY_INPROCESS);
    instanceFilter.searchScope = searchScope;
    instanceFilter.addAttributeTo(variable : "caseId", comparator : Comparison.CONTAINS, value : "GN" + contractNummer);
    Instance[] instances = ps.getInstancesByFilter(filter : instanceFilter);The problem here is that the connectTo method contains the user and password. Is there any other way to get a ProcessService instance differently in an automatic activity? Or is it possible to get the credentials to be used in the connectTo method?

    Pelo,
    To avoid burying connection credentials in source code, you might specify them as Business Parameters (under Organization). That way they can be configured at run time.
    I hope this helps, but I also hope you get a better suggestion.
    John

  • Global Automatic Activity - Process to Process

    Hi,
    How can we invoke another process from one process using a Global automatic activity..Is PAPI the only way? How can we use PAPI code inside of a Global Automatic Activity to call another process?v Any examples?
    Edited by: user647659 on Oct 27, 2008 11:02 PM
    Edited by: user647659 on Oct 28, 2008 11:49 AM

    I am not sure what you saying..Did u mean Global Creation ? But that would have a user to invoke the process..I want to invoke it automatically...I got a part of the answer...But it takes all instances..and creates multiple instances..I want to isolate the instances previously been transferred..What I am doing is ..Using a Global Automatic to invoke the other process.Writing a PAPI code to call the other process from this process...and Polling By Interval every 1m..
    Here is a code:-
    ProcessService ps;
    ps.connectTo(url : Fuego.Server.directoryURL, user : (String)BusinessParameter.getValue(name : "USER_NAME"), password : (String)BusinessParameter.getValue(name : "PASSWORD"));
    logMessage("Process Service connected--->" );
    businessProcess = ps.getProcess(process : "StartProcess");
    InstanceFilter instanceFilter;
    instanceFilter.create(processService : ps);
    SearchScope searchScope = new SearchScope(ParticipantScope.ALL,StatusScope.INPROCESS_AND_COMPLETED);
    instanceFilter.searchScope = searchScope;
    result2 = businessProcess.getInstancesByFilter(filter : instanceFilter);
    logMessage("Length ==>" +length(result2));
    length = length(result2);
    logMessage("Length Transferred==>" +length);
    test["name"] = "testing";
    if(length > 0)
         for(int i=0; i < length; i++)
              ProcessInstance.create(arguments : test, argumentsSetName : "BeginIn");
    else
         logMessage("length is-->" + length);
    length = 0;
    Any suggestions on how to isolate the previous obtained instances would be appreciated..
    Thanks,

  • Invoke process from method implementation of automatic activity

    Hi,
    I want to invoke a business process from automatic activity of another business process deployed on same engine and in same project as well. Please provide steps, if possible for the same.
    Thanks in advance.

    Hi Ketan,
    Here's how you can create an instance in a process using logic in an Automatic activity's method. This uses the "Fuego.Lib.ProcessInstance.create()" method shown below inside a process:
    // "args" is an associative string array (Any[String])
    argsIn as Any[String]
    // this assumes that the Begin activity has two argument variables
    //   named "nameArg" and "amountArg" and you're setting them
    //   to the variables "name" and "amount" respectively
    argsIn["someArgVarName"] = "Hello"
    argsIn["someBpmObject"] = myBpmObject
    // logic here to determine the name of the process to create an instance in
    idOfProcess as String
    idOfProcess = <hard coded string that has the id (not the name of the process to instantiate>
    ProcessInstance.create(processId : "/" + idOfProcess, arguments : argsIn, argumentsSetName : "BeginIn") ProcessInstance is in the Catalog inside Fuego.Lib.
    The processId parameter (the "idOfProcess" variable in the above logic) is the thing I most commonly screw up with this. It is the text you see when you right mouse click the process in the Project Navigator tab -> "Properties". Look at the value in the "Id" field and not the "Name" field here (the name without any space characters). Prefix it with a "/" as is shown here and if you've deployed this using an organization unit (OU) then prefix this to the string also.
    The third parameter is almost always "BeginIn". Begin activities in a process can have many incoming argument mappings, the default is "BeginIn". To see yours, double click the process's Begin activity and look at the mapping's name in the upper left corner of the dialog.
    "argsIn" is the set of incoming argument variables you want passed into the process. A common mistake is to type in the names of the incoming argument variables without the double quotes like this:
    // this will *NOT* work
    argsIn[someArgVarName] = "Hello"
    argsIn[someBpmObject] = myBpmObject
    . . .Here is the correct syntax:
    // this *WILL* work
    argsIn["someArgVarName"] = "Hello"
    argsIn["someBpmObject"] = myBpmObject
    . . .In this example, the process has two argument variables. It does not matter if the incoming argument variables are primitive type arguments (e.g. String, Integer, Decimal...) or BPM Objects, it is always done the same way. In this example, there is a String incoming argument called "someArgVarName" and a BPM Object incoming argument called "someBpmObject".
    Hope this helps,
    Dan

  • 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

  • Automatic Active Sync failed to Start at appropriate time

    Hellos,
    Its holiday season here. We had a FF Active Sync process that failed to start up.
    Ops noted an overheating CPU at 2am. Server was brought down.. App server stopped, Database stopped. Fan fixed and Server rebooted.. Database started Ok, App server started Ok.. according to AS Log idM started up ok... but the 'automatic' Active Sync process refused to start.
    What could prevent it?!
    I have seen various people's opinions.. e.g.
    "Hi,
    There can be lot of reasons , for not starting activesync.
    if you are using activesync between SIM and database ,
    then lets start from activesync wizard ,
    1)check the i/p activesync form(version should be correct)
    2)check the startup type
    3) if you are using query based activesync
    check the first and last predicate fields and you need to ensure that the logic you have used in i/p activesync form will generate some processing once you start active sync otherwise you will not see active sync in executing state.
    you can check weather activesync has performed operation or not in IAPI in the debug page under configurator
    if your CPU utilisation on server is very high activesync will not start
    these are general things
    if you can give some more specific details abt your application and problem i can help you out.
    Warm Regards,
    Gajanan"
    This process had been left unstarted for some time. Noone checked.. why should they.. its automatic (obviously IdM isnt an R.E.M. fan)
    Surely an automatic start type should (re)start after a reboot for hardware reasons!
    Is the only thing we can we put in a Solaris shell script to test that these ****ing active sync process have been started and are running after a reboot/restart of App.server is a date test of the log file? i.e. if log file has not been touched in x days raise an alarm... seems something that is better built into IdM than a script.
    How has this problem been faced and met by others out there? I am sure we are not the only people who have had to shutdown and restart IdM.

    Indeed it does. The problem is that a log is just that.. a log of what has happened. In our case the 'automatic' AS process failed to start automatically.
    We are forced to use the log and reverse apriori reasoning to detect whether the AS process actually started.
    I hope you agree this situation isnt really satisfactory, is it?

  • 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.

  • 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.

  • 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

  • "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

Maybe you are looking for