Cmp transaction exception

I am getting a sqlexception error message in the client(servlet) when my entity bean(cmp) performs the database operation.
I am invoking the entity bean thru the session bean which is called by the servlet (client).
I need my sqlexception to be delegated to my session bean instead of the client(servlet).
let me know if u guys have any solution for this.
i am using weblogic6.1 & oracle database.

hello ravi,
thanks for the answer.
so u mean to tell that i have to catch sqlexception where i invoke the entity bean call right?
i will try that.
ok i have one more question to u.
Assume that the client is getting the remote exception thrown by the container.
when i do a exp.getMessage() on the client side i am getting a full printstacktrace.
But i need just one single statement from the exception messages.
so how u handle this?
Thanks in advance.
radhakrishnan.

Similar Messages

  • User interference with CMP transaction (illegal termination of transaction)

    Folks,
    Have any one encountered this error before ? Let me know the root cause of this error if you do know about it.
    thx.
    Rajesh.

    Hello.
    The error occurs when the method SmsOmniServiceBean.proceedOMNI() calls REMOTELY the method SmsOmniServiceBean.proceedOMNIinternal(). What is important is that the call is a remote call (using JNDI, the home and remote interface) that creates a new transaction (the method proceedOMNIinternal() transaction is defined as "requiresNew" in the ejb-jar.xml). This is done on purpose. If the proceedOMNIinternal() transaction is rolled back, we do not want that the whole transaction is rolled back.
    Please note that the calling method proceedOMNI() is execute in a loop inside another method (proceedOMNIAll()), and the exception is thrown at some random point in the loop: sometimes near the middle, sometimes near the end.
    Please note also that no entity bean are used in our application, nor in another application deployed on the server, so why "User interference with CMP" ?
    Here is the stack trace:
    com.evermind.server.rmi.OrionRemoteException: User interference with CMP transaction (illegal termination of transaction)
         at SmsOmniService_StatelessSessionBeanWrapper92.proceedOMNIinternal(SmsOmniService_StatelessSessionBeanWrapper92.java:736)
         at com.bnpparibas.bfi.sms.server.ejb.SmsOmniServiceBean.proceedOMNI(SmsOmniServiceBean.java:223)
         at com.bnpparibas.bfi.sms.server.ejb.SmsOmniServiceBean.proceedOMNIAll(SmsOmniServiceBean.java:299)
         at SmsOmniService_StatelessSessionBeanWrapper92.proceedOMNIAll(SmsOmniService_StatelessSessionBeanWrapper92.java:479)
         at java.lang.reflect.Method.invoke(Native Method)
         at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:124)
         at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
         at java.lang.Thread.run(Thread.java:479)
    Thank you in advance for your answer,
    Pierre Laroche

  • Just another cmp transaction question

    Hi
    I would like to know if it is possible to manage cmp transaction from the client code. For example I need to
    execute some business method several times but I don't want the container to commit transaction after each execute but only if all executes were successfull.
    Bartek

    I think I understand your post but my problem is rather different. I have a session bean with a business method named process(..) that receives as an argument a org.dom4j.Document object and does an proper action. I works fine when that process() method is called only one . But now I wan't to call it several times , each time with different org.dom4j.Document perhaps and want to have tha transaction commited only after complete whole process. I am quite new I ejbs so it is possible that is quite a silly question but I need surety that the only way to do this is to make an another session bean business method that gets as a parameter for example a collection of org.dom4j.Document objects.
    Thanks for help
    Bartek

  • Finders/CMP transactions

    Hello,
    I've got some weird behaviour happening on my finders.
    I've got a CMP bean and a Session bean on top of it.
    The session bean has a method that performs the following:
    1 - creates an instance of the CMP bean
    2 - updates an attribute on this instance of the CMP
    3 - perform another find on the CMP.
    Now the first 2 steps are ok. The 3rd step is a problem.
    If I do a find by PK then it works.
    But if I perform a custom finder that specifies one of the attributes that was updated in step 2, (eg, age=1, where age is an attribute on the CMP etc), then it doesn't return the CMP.
    If I retrieve the bean at this point in time through a find by PK and check the updated attribute, it returns the updated value.
    So it is as if the custom finder is some how executed in a different transaction from the rest of the method, as it doesn't see the fact that I've updated the attribute in step 2.
    Note that if I call the custom finder in step 1, after creation, it works properly.
    I've got the transaction attribute on the session bean to Requires and all the entity bean methods are set to Requires.
    BTW, I'm using OC4J 1.0.2.2.1.
    Any ideas,
    Thanks!!!,
    Ricky

    you can find DuplicateKeyException is this place
    http://java.sun.com/j2ee/1.4/docs/api/
    javax.ejb.DuplicateKeyException.
    DuplicateKeyException - exception javax.ejb.DuplicateKeyException.
    The DuplicateKeyException exception is thrown if an entity EJB object cannot be created because an object with the same key already exists.
    But I cannot find how to use DuplicateKeyException in SAP applications
    Very Sorry.

  • Collection may have been accessed after transaction exception ?

    I am using Forte for Java EE to create 2 CMP Entity
    Beans : Employee and Paycheck. I access the Employee
    Entity bean from servlet and then look up the associated Paycheck objects as shown below:
    InitialContext initial = new InitialContext();
    Object objref =
    initial.lookup("java:comp/env/ejb/employee");
    EmployeeLocalHome ref = (EmployeeLocalHome) objref;
    if ( ref == null)
    System.err.println("EmployeeLocalHome not found !");
    EmployeeLocal emp = ref.findByPrimaryKey(new Integer(empid));
    if ( emp == null)
    System.err.println("Find failed..EmployeeLocal not found ! ");
    Iterator paychecks = emp.getPaycheck().iterator()
    At this point I get the exception:
    java.lang.IllegalStateException: Collection may have been accessed after transaction completion.
    at com.sun.ejb.persistence.PMSet.iterator(PMSet.java:72)
    at payroll.paycheck.LoginViewBean.handleSubmitRequest(LoginViewBean.java:218)
    Any pointers on where i am going wrong ?

    I have figured out what the problem is.  I was running an old version of SAP GUI.  Creating the GP with SAP Transaction defaults to GuiType=WinGui instead of WebGui.

  • Handling Functional Acknowledgement only in case of transaction exception

    Hi ,
    We have requirement to acknowledge client with only exception transactions. How can we handle this with B2B?
    I have used the Functional Acknowledge concept wherein for Acknowledging EDI transactions, we are using Control D3 message format and moving the acknowledgement message to another JMS Queue.
    But the acknowledgements/Control EDI messages are getting generated for both success as well as error cases and there is no way to distinguish between them. How can I restrict this to only Error cases.
    Basically flow is like EDI Message Format --> JMS Queue --> B2B
    --> (in success case) XML generated in B2B_IN_Queue (no ack required)
    --> (in error case) generate CONTRL D3 message and send it to another JMS Queue.
    Pls help.
    Regards
    Aparna

    Hi All,
    Can anyone pls answer my question?
    Regards
    Aparna

  • How to handle transaction exception

    Hi,
    I am using jdev 11g.
    I need to catch the exception in my transaction like (table not found, column must not be null, column not found, ...)
    hereunder is my code.
      public void saveOsaUser(OsaUser osaUser) throws Exception {
        EntityManager em = getEntityManager();
        try {
          utx.begin();
          em.joinTransaction();
          em.persist(osaUser);
          utx.commit();
        } catch (Exception ex) {
          try {
            utx.rollback();
            throw new Exception(ex.getLocalizedMessage());
          } catch (SQLException sqle) {
            throw new Exception(sqle.getLocalizedMessage());
          } catch (IllegalArgumentException iae) {
            throw new Exception(iae.getLocalizedMessage());
          } catch (EJBException ejbe) {
            throw new Exception(ejbe.getLocalizedMessage());
          } catch (RuntimeException re) {
            throw new Exception(re.getLocalizedMessage());
          } catch (Exception e) {
            throw new Exception(e.getLocalizedMessage());
        } finally {
          em.close();
      }Whatever the error type, i always get the message : Transaction does not exist.
    Kindly advice how can handle these SQL error (table not found, column must not be null, column not found, ...)
    Regards
    Emile BITAR

    Repost

  • How do handle a rollbackException and other transaction exceptions

    Hello,
    I'm trying to do commit and rollbacks for my stateless session bean and I'm having a problem handling exceptions like javax.transaction.RollbackException. This causes me to be unable to complile my code. When I do put a catch in for the rollbackException it says it can't be reached. Below is the code:
    if (madeConnection != true)
    returnCode = 8;
    else
    UserTransaction ut = ejbContext.getUserTransaction();
    ut.begin();
    try{          
         statement = c.prepareCall("{call NBA907(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}");                    
         java.lang.Integer dept = Integer.valueOf(department);
         short dpt = dept.shortValue();
         TrxNum = (short) recordId;
         //**** Input parameters ****
         statement.setString(1, AAA.toUpperCase());
         statement.setString(2, BBB);
         statement.setShort(3, CCC);
         statement.setString(4, DDD.toUpperCase());
         statement.setString(5, EEE);
         statement.setString(6, FFF);
         statement.setString(7, GGG);
         statement.setString(8, HHH);
         statement.setString(9, III);
         statement.setString(10, JJJ);
         statement.setString(11, KKK);
         statement.setString(12, LLL);
         statement.setShort(13, MMM);
         statement.setString(14, NNN);
         statement.setString(15, OOO);
         //**** Output parameters ****
         statement.registerOutParameter(16, Types.CHAR);
         statement.registerOutParameter(17, Types.SMALLINT);
         statement.registerOutParameter(18, Types.CHAR);
         rs = statement.executeQuery();
         sProcedureCode = statement.getString(16);
         sqlCode = statement.getShort(17);
         returnMessage = statement.getString(18);
         if (!(sProcedureCode.equals("01")))
         ut.setRollbackOnly();
         System.out.println ("***************************************");
         System.out.println("Method - updateRecord");
         system.out.println("SQL Code - " + sqlCode);
         System.out.println("SP Code - " + sProcedureCode);
         System.out.println("Message - " + returnMessage);
         System.out.println("*****************************************");
         if (sProcedureCode.equals("99"))
         returnCode = sqlCode;
         else     
              returnCode = Integer.parseInt(sProcedureCode);           
    catch(SystemException e) {
    System.out.println("SQLException caught: " + e.getMessage());
    catch(SQLException e) {
    System.out.println("SQLException caught: " + e.getMessage());
    finally {
    try {
              ut.commit();
              statement.close();
              c.close();
         catch (SQLException ignored) {}
    Any ideas?
    TIA,
    J.Clancey

    I got past the exception errors but the line
    UserTransaction ut = ejbContext.getUserTransaction();
    is returning a null. Below is the changes I made to get past that error.
    public int updateRecord(String User, String Password, int recordId, String department, String description, String classCatg, String coordinate, String startMonth, String startYear, String endMonth, String endYear, String POSeason, String merchType, String Chain)
              int returnCode = 0;
              String sProcedureCode = null;
              String returnMessage = null;
              short sqlCode = 0;
              String collectionId = "BA_ANBCS";
              CallableStatement statement= null;
              ResultSet rs = null;
              String tranType = "C";
              String tranNumber = null;      
              String storedProCode = null;
              short TrxNum = 0;
              boolean madeConnection = true;
              Context ctx = null;
              DataSource ds = null;
              Connection c = null;          
              java.util.Properties parms = new java.util.Properties();
              parms.setProperty(Context.INITIAL_CONTEXT_FACTORY,
                   "com.ibm.websphere.naming.WsnInitialContextFactory");               
              try {
                   ctx = new InitialContext(parms);               
              catch (Exception e1)
                   System.out.println("Unable to get initial context");
                   System.out.println(e1);
              try
                   ds = (DataSource)ctx.lookup("jdbc/DB2T");
                   c = ds.getConnection(User, Password);
              catch (SQLException e) {
                   System.out.println("SQLException caught: " + e.getMessage());
                   madeConnection = false;
              catch (Exception e) {
                   e.printStackTrace();
                   madeConnection = false;
              if (madeConnection != true)
                   returnCode = 8;
              else
                   System.out.println("Made Else");
                   UserTransaction ut = ejbContext.getUserTransaction();
                   try{
                        System.out.println("Before Begin");
                        ut.begin();
                        System.out.println("After Begin");
                   statement = c.prepareCall("{call NBA907(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}");                    
                        java.lang.Integer dept = Integer.valueOf(department);
                        short dpt = dept.shortValue();
                        TrxNum = (short) recordId;
                        //**** Input parameters ****
                        statement.setString(1, Chain.toUpperCase());
                        statement.setString(2, collectionId);
                        statement.setShort(3, dpt);
                        statement.setString(4, classCatg.toUpperCase());
                        statement.setString(5, merchType);
                        statement.setString(6, coordinate);
                        statement.setString(7, POSeason);
                        statement.setString(8, startMonth);
                        statement.setString(9, startYear);
                        statement.setString(10, endMonth);
                        statement.setString(11, endYear);
                        statement.setString(12, description);
                        statement.setShort(13, TrxNum);
                        statement.setString(14, tranType);
                        statement.setString(15, User);
                        //**** Output parameters ****
                        statement.registerOutParameter(16, Types.CHAR);
                        statement.registerOutParameter(17, Types.SMALLINT);
                        statement.registerOutParameter(18, Types.CHAR);
                        rs = statement.executeQuery();
                        sProcedureCode = statement.getString(16);
                        sqlCode = statement.getShort(17);
                        returnMessage = statement.getString(18);
                        System.out.println("Before SP Check");               
                        if (!(sProcedureCode.equals("01")))
                             //c.rollback();
                             ejbContext.setRollbackOnly();                         
                             System.out.println("***********************************************");
                             System.out.println("Method - updateRecord");
                             System.out.println("Stored Procedure - NBA 907");
                             System.out.println("Record Number - " + TrxNum);
                             System.out.println("Department - " + dpt);
                             System.out.println("Class Category - " + classCatg);
                             System.out.println("Merch Type - " + merchType);
                             System.out.println("coordinate - " + coordinate);
                             System.out.println("POSeason - " + POSeason);
                             System.out.println("Start Month - " + startMonth);
                             System.out.println("Start Year - " + startYear);
                             System.out.println("End Month - " + endMonth);
                             System.out.println("End Year - " + endYear);
                             System.out.println("Description - " + description);
                             System.out.println("Chain - " + Chain);
                             System.out.println("User Id - " + User);
                             System.out.println("SQL Code - " + sqlCode);
                             System.out.println("SP Code - " + sProcedureCode);
                             System.out.println("Message - " + returnMessage);
                             System.out.println("***********************************************");
                        ut.commit();     
                        if (sProcedureCode.equals("99"))
                             returnCode = sqlCode;
                        else     
                             returnCode = Integer.parseInt(sProcedureCode);                     
                   catch (SystemException sysex) {
                                  throw new EJBException
                                  ("Rollback failed: " + sysex.getMessage());
                   catch (RollbackException sysex) {
                                  throw new EJBException
                                  ("Rollback failed: " + sysex.getMessage());
                   catch (NotSupportedException sysex) {
                                  throw new EJBException
                                  ("Rollback failed: " + sysex.getMessage());
                   catch (HeuristicMixedException sysex) {
                                  throw new EJBException
                                  ("Rollback failed: " + sysex.getMessage());
                   catch (HeuristicRollbackException sysex) {
                                  throw new EJBException
                                  ("Rollback failed: " + sysex.getMessage());
                   catch(SQLException e) {
                        System.out.println("SQLException caught: " + e.getMessage());
                   try {
                                  ut.setRollbackOnly();
                             catch (SystemException sysex) {
                                  throw new EJBException
                                  ("Rollback failed: " + sysex.getMessage());
                   finally {
                        try {
                             statement.close();
                             c.close();
                        catch (SQLException ignored) {}
              return returnCode;
    I will also check page 396.
    Thanks vickyk.
    TIA for any help resolving this null problem.
    J.Clancey

  • A global transaction exception on  weblogic 8.1 sp4 and ingres ,could you give me some help

    My application deployed on weblogic 8.1 sp4 and ingres2.6,The ejb is BMP and
              transaction type is "required",so i configured XA connection pool with
              edbc.jar,which support XA transaction.but when excute an ejb mothod,it is
              always throw the Exeption:
              javax.ejb.FinderException: Unexpected exception while enlisting XAConnection
              jav
              a.sql.SQLException: XA error: XAER_PROTO : Routine was invoked in an
              inproper co
              ntext start() failed on resource 'flexstudio.xa.ds': XAER_PROTO : Routine
              was in
              voked in an inproper context
              javax.transaction.xa.XAException
              at ca.edbc.jdbcx.EdbcXAConnect.start(EdbcXAConnect.java:349)
              at weblogic.jdbc.jta.DataSource.start(DataSource.java:629)
              at
              weblogic.transaction.internal.XAServerResourceInfo.start(XAServerReso
              urceInfo.java:1140)
              at
              weblogic.transaction.internal.XAServerResourceInfo.xaStart(XAServerRe
              sourceInfo.java:1072)
              at
              weblogic.transaction.internal.XAServerResourceInfo.enlist(XAServerRes
              ourceInfo.java:240)
              at
              weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
              rverTransactionImpl.java:463)
              at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1392)
              at
              weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              334)
              at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              at
              weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              ce.java:305)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              t(ExternalTransaction.java:53)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              Connection(ExternalTransaction.java:90)
              at
              com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              eryForList(GeneralStatement.java:123)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:613)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:587)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              ssionImpl.java:120)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              entImpl.java:78)
              at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              at
              com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              rkflowPackageInfoDAO.java:892)
              at
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              dByName(WorkflowPackageBean.java:373)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              indByName(wfpackage_tzapts_Impl.java:335)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at
              sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              java:39)
              at
              sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at
              weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              (BeanManagedPersistenceManager.java:152)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1784)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1756)
              at
              weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              findByName(wfpackage_tzapts_HomeImpl.java:190)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              WLSkel.invoke(Unknown Source)
              at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              ef.java:108)
              at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              dSubject.java:363)
              at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              147)
              at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:415)
              at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:30)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1397)
              at
              weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              334)
              at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              at
              weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              ce.java:305)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              t(ExternalTransaction.java:53)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              Connection(ExternalTransaction.java:90)
              at
              com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              eryForList(GeneralStatement.java:123)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:613)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:587)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              ssionImpl.java:120)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              entImpl.java:78)
              at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              at
              com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              rkflowPackageInfoDAO.java:892)
              at
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              dByName(WorkflowPackageBean.java:373)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              indByName(wfpackage_tzapts_Impl.java:335)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at
              sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              java:39)
              at
              sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at
              weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              (BeanManagedPersistenceManager.java:152)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1784)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1756)
              at
              weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              findByName(wfpackage_tzapts_HomeImpl.java:190)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              WLSkel.invoke(Unknown Source)
              at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              ef.java:108)
              at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              dSubject.java:363)
              at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              147)
              at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:415)
              at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:30)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              at
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              dByName(WorkflowPackageBean.java:383)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              indByName(wfpackage_tzapts_Impl.java:335)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at
              sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              java:39)
              at
              sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at
              weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              (BeanManagedPersistenceManager.java:152)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1784)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1756)
              at
              weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              findByName(wfpackage_tzapts_HomeImpl.java:190)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              WLSkel.invoke(Unknown Source)
              at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              ef.java:108)
              at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              dSubject.java:363)
              at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              147)
              at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:415)
              at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:30)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              javax.ejb.FinderException: Unexpected exception while enlisting XAConnection
              jav
              a.sql.SQLException: XA error: XAER_PROTO : Routine was invoked in an
              inproper co
              ntext start() failed on resource 'flexstudio.xa.ds': XAER_PROTO : Routine
              was in
              voked in an inproper context
              javax.transaction.xa.XAException
              at ca.edbc.jdbcx.EdbcXAConnect.start(EdbcXAConnect.java:349)
              at weblogic.jdbc.jta.DataSource.start(DataSource.java:629)
              at
              weblogic.transaction.internal.XAServerResourceInfo.start(XAServerReso
              urceInfo.java:1140)
              at
              weblogic.transaction.internal.XAServerResourceInfo.xaStart(XAServerRe
              sourceInfo.java:1072)
              at
              weblogic.transaction.internal.XAServerResourceInfo.enlist(XAServerRes
              ourceInfo.java:240)
              at
              weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
              rverTransactionImpl.java:463)
              at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1392)
              at
              weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              334)
              at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              at
              weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              ce.java:305)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              t(ExternalTransaction.java:53)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              Connection(ExternalTransaction.java:90)
              at
              com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              eryForList(GeneralStatement.java:123)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:613)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:587)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              ssionImpl.java:120)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              entImpl.java:78)
              at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              at
              com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              rkflowPackageInfoDAO.java:892)
              at
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              dByName(WorkflowPackageBean.java:373)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              indByName(wfpackage_tzapts_Impl.java:335)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at
              sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              java:39)
              at
              sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at
              weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              (BeanManagedPersistenceManager.java:152)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1784)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1756)
              at
              weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              findByName(wfpackage_tzapts_HomeImpl.java:190)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              WLSkel.invoke(Unknown Source)
              at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              ef.java:108)
              at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              dSubject.java:363)
              at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              147)
              at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:415)
              at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:30)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1397)
              at
              weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              334)
              at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              at
              weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              ce.java:305)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              t(ExternalTransaction.java:53)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              Connection(ExternalTransaction.java:90)
              at
              com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              eryForList(GeneralStatement.java:123)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:613)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:587)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              ssionImpl.java:120)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              entImpl.java:78)
              at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              at
              com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              rkflowPackageInfoDAO.java:892)
              at
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              dByName(WorkflowPackageBean.java:373)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              indByName(wfpackage_tzapts_Impl.java:335)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at
              sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              java:39)
              at
              sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at
              weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              (BeanManagedPersistenceManager.java:152)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1784)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1756)
              at
              weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              findByName(wfpackage_tzapts_HomeImpl.java:190)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              WLSkel.invoke(Unknown Source)
              at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              ef.java:108)
              at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              dSubject.java:363)
              at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              147)
              at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:415)
              at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:30)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              at
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              dByName(WorkflowPackageBean.java:383)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              indByName(wfpackage_tzapts_Impl.java:335)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at
              sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              java:39)
              at
              sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at
              weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              (BeanManagedPersistenceManager.java:152)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1784)
              at
              weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              anager.java:1756)
              at
              weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              findByName(wfpackage_tzapts_HomeImpl.java:190)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              WLSkel.invoke(Unknown Source)
              at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              ef.java:108)
              at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              dSubject.java:363)
              at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              147)
              at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:415)
              at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:30)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              i hope to get more helpful information,so i turn on weblogic.debug
              switch with
              "-Dweblogic.Debug=weblogic.JDBCConn,weblogic.JDBCSQL,weblogic.JTA2PC,weblogic.JTAXA,weblogic.JTAJDBC"
              the below is debug output, i dont know wht always inproper transaction
              state.
              <Mar 14, 2006 11:11:58 AM GMT+08:00> <Info> <WebLogicServer>
              <BEA-000213> <Addin
              g address: 129.184.13.228 to licensed client list>
              <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <java.lang.Excep
              tion: TRACE: [ExecuteThread: '24' for queue:
              'weblogic.kernel.Default']ServerTM[
              ServerCoordinatorDescriptor=(CoordinatorURL=weblogic81sp4_test+129.184.13.228:80
              01+Intetest+t3+,
              XAResources={},NonXAResources={})].setTransactionTimeout(120).
              at
              weblogic.transaction.internal.TraceHelper.traceStack(TraceHelper.java
              :28)
              at
              weblogic.transaction.internal.TransactionManagerImpl.setTransactionTi
              meout(TransactionManagerImpl.java:415)
              at
              weblogic.ejb20.internal.MethodDescriptor.startTransaction(MethodDescr
              iptor.java:252)
              at
              weblogic.ejb20.internal.MethodDescriptor.getInvokeTx(MethodDescriptor
              .java:377)
              at
              weblogic.ejb20.internal.EJBRuntimeUtils.createWrapWithTxs(EJBRuntimeU
              tils.java:324)
              at
              weblogic.ejb20.internal.BaseEJBHome.preHomeInvoke(BaseEJBHome.java:35
              8)
              at
              weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:631)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              findByName(wfpackage_tzapts_HomeImpl.java:190)
              at
              com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              WLSkel.invoke(Unknown Source)
              at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              ef.java:108)
              at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              dSubject.java:363)
              at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              147)
              at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:415)
              at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:30)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              >
              <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <Xid=BEA1-0002D2
              21FAAB(2036170959),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,secon
              ds since begin=0,seconds left=-1142305918) wakeUpAfterSeconds(120)>
              <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB: null: init(t/o=120,ttl=120)>
              <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB: null: setProperty: weblogic.transaction.name=[EJB
              com.bull.flexflow.workflow
              .workflowpackage.WorkflowPackageBean.findByName(java.lang.String)]>
              <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB: null: setName: [EJB
              com.bull.flexflow.workflow.workflowpackage.WorkflowPacka
              geBean.findByName(java.lang.String)]>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              com.b
              ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              tring)]- -pool:flexstudio.xa.ds- > DataSource.getConnection>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              com.b
              ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              tring)]- -pool:flexstudio.xa.ds- >
              DataSource.refreshXAConnAndEnlist(inXAConn:nu
              ll, conn:null, needsTxCtx:true)>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              com.b
              ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              tring)]- -pool:flexstudio.xa.ds- > DataSource.getXAConnFromPool
              waitSecs:117>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              com.b
              ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              tring)]- -pool:flexstudio.xa.ds- <
              DataSource.getXAConnFromPool:[EDBC-XAConnecti
              on[5], owner=null, rmConn=EDBC-XAVirtConn[6]], Num XAConn:1>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB: [EJB
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByNa
              me(java.lang.String)]: setLocalProperty:
              weblogic.jdbc.jta.flexstudio.xa.ds=webl
              ogic.jdbc.wrapper.TxInfo@1aaa2594>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              com.b
              ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              tring)]- -pool:flexstudio.xa.ds- XA conn assoc with
              tx:[EDBC-XAConnection[5], ow
              ner=flexstudio.xa.ds, rmConn=EDBC-XAVirtConn[6]]>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB: [EJB
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByNa
              me(java.lang.String)]: enlistResource:flexstudio.xa.ds>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <ResourceDescrip
              tor[flexstudio.xa.ds]: getOrCreate gets rd: name = flexstudio.xa.ds
              resourceType = 2
              registered = true
              scUrls = weblogic81sp4_test+129.184.13.228:8001+Intetest+t3+
              xar = flexstudio.xa.ds
              healthy = true
              lastAliveTimeMillis = -1
              numActiveRequests = 0
              >
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB: [EJB
              com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByNa
              me(java.lang.String)]: setCoordinatorURL
              =>ServerCoordinatorDescriptor=(Coordina
              torURL=weblogic81sp4_test+129.184.13.228:8001+Intetest+t3+,
              XAResources={},NonXA
              Resources={})>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB6F1049B9: enlist flexstudio.xa.ds, beforeState=new>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <BEA1-0002D221FA
              AB6F1049B9: XA.start(rm=flexstudio.xa.ds, xar=flexstudio.xa.ds,
              flags=TMNOFLAGS)
              >
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <ResourceDescrip
              tor[flexstudio.xa.ds]: Resource 'flexstudio.xa.ds'
              setTransactionTimeout(120) no
              t called. callSetTransactionTimeout=false,
              supportsSetTransactionTimeout=true>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              <ResourceDescrip
              tor[flexstudio.xa.ds]: startResourceUse, Number of active requests:1, last
              alive
              time:0 ms ago.>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              < -tx:null- -poo
              l:flexstudio.xa.ds- > XAConnection.getXAResource,
              xaConn:EDBC-XAConnection[5]>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              < -tx:null- -poo
              l:flexstudio.xa.ds- < XAConnection.getXAResource,
              xaRes:EDBC-XAConnection[5]>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              < -tx:null- -poo
              l:flexstudio.xa.ds- >
              XAResource.start(Xid:bea1-0002d221faab6f1049b9-666c6578737
              47564696f2e78612e6473, flags:TMNOFLAGS), xaRes:EDBC-XAConnection[5]>
              <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              < -tx:null- -poo
              l:flexstudio.xa.ds- < XA error: XAER_PROTO : Routine was invoked in an
              inproper
              context
              javax.transaction.xa.XAException
              at ca.edbc.jdbcx.EdbcXAConnect.start(EdbcXAConnect.java:349)
              at weblogic.jdbc.jta.DataSource.start(DataSource.java:629)
              at
              weblogic.transaction.internal.XAServerResourceInfo.start(XAServerReso
              urceInfo.java:1140)
              at
              weblogic.transaction.internal.XAServerResourceInfo.xaStart(XAServerRe
              sourceInfo.java:1072)
              at
              weblogic.transaction.internal.XAServerResourceInfo.enlist(XAServerRes
              ourceInfo.java:240)
              at
              weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
              rverTransactionImpl.java:463)
              at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1392)
              at
              weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              334)
              at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              at
              weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              ce.java:305)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              t(ExternalTransaction.java:53)
              at
              com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              Connection(ExternalTransaction.java:90)
              at
              com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              eryForList(GeneralStatement.java:123)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:613)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              MapExecutorDelegate.java:587)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              ssionImpl.java:120)
              at
              com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              entImpl.java:78)
              at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              at
              com.bull

    albert wrote:
              > My application deployed on weblogic 8.1 sp4 and ingres2.6,The ejb is BMP and
              > transaction type is "required",so i configured XA connection pool with
              > edbc.jar,which support XA transaction.but when excute an ejb mothod,it is
              > always throw the Exeption:
              Hi. In order to debug this we would need you to turn on
              the JTAXA, JTA2PC, JTAJDBC debug flags and in the
              Connection Pool under JDBCCOnnectionPoolMBean JDBCXADebugLevel="20".
              Then reproduce and provide server logs for all servers involved in
              the global transaction and the config.xml.
              This is complex enough that you should open an official support case
              to get help setting that up.
              Joe
              >
              >
              > ####################################################################
              > javax.ejb.FinderException: Unexpected exception while enlisting XAConnection
              > jav
              > a.sql.SQLException: XA error: XAER_PROTO : Routine was invoked in an
              > inproper co
              > ntext start() failed on resource 'flexstudio.xa.ds': XAER_PROTO : Routine
              > was in
              > voked in an inproper context
              > javax.transaction.xa.XAException
              > at ca.edbc.jdbcx.EdbcXAConnect.start(EdbcXAConnect.java:349)
              > at weblogic.jdbc.jta.DataSource.start(DataSource.java:629)
              > at
              > weblogic.transaction.internal.XAServerResourceInfo.start(XAServerReso
              > urceInfo.java:1140)
              > at
              > weblogic.transaction.internal.XAServerResourceInfo.xaStart(XAServerRe
              > sourceInfo.java:1072)
              > at
              > weblogic.transaction.internal.XAServerResourceInfo.enlist(XAServerRes
              > ourceInfo.java:240)
              > at
              > weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
              > rverTransactionImpl.java:463)
              > at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1392)
              > at
              > weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              > 334)
              > at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              > at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              > at
              > weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              > ce.java:305)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              > t(ExternalTransaction.java:53)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              > Connection(ExternalTransaction.java:90)
              > at
              > com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              > eryForList(GeneralStatement.java:123)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:613)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:587)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              > ssionImpl.java:120)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              > entImpl.java:78)
              > at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              > at
              > com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              > rkflowPackageInfoDAO.java:892)
              > at
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              > dByName(WorkflowPackageBean.java:373)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              > indByName(wfpackage_tzapts_Impl.java:335)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              > java:39)
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              > sorImpl.java:25)
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              > (BeanManagedPersistenceManager.java:152)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1784)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1756)
              > at
              > weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              > findByName(wfpackage_tzapts_HomeImpl.java:190)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              > WLSkel.invoke(Unknown Source)
              > at
              > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > at
              > weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              > ef.java:108)
              > at
              > weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              > dSubject.java:363)
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              > 147)
              > at
              > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > a:415)
              > at
              > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > .java:30)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              >
              >
              > at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1397)
              > at
              > weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              > 334)
              > at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              > at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              > at
              > weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              > ce.java:305)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              > t(ExternalTransaction.java:53)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              > Connection(ExternalTransaction.java:90)
              > at
              > com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              > eryForList(GeneralStatement.java:123)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:613)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:587)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              > ssionImpl.java:120)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              > entImpl.java:78)
              > at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              > at
              > com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              > rkflowPackageInfoDAO.java:892)
              > at
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              > dByName(WorkflowPackageBean.java:373)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              > indByName(wfpackage_tzapts_Impl.java:335)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              > java:39)
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              > sorImpl.java:25)
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              > (BeanManagedPersistenceManager.java:152)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1784)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1756)
              > at
              > weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              > findByName(wfpackage_tzapts_HomeImpl.java:190)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              > WLSkel.invoke(Unknown Source)
              > at
              > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > at
              > weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              > ef.java:108)
              > at
              > weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              > dSubject.java:363)
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              > 147)
              > at
              > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > a:415)
              > at
              > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > .java:30)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              >
              >
              > at
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              > dByName(WorkflowPackageBean.java:383)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              > indByName(wfpackage_tzapts_Impl.java:335)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              > java:39)
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              > sorImpl.java:25)
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              > (BeanManagedPersistenceManager.java:152)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1784)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1756)
              > at
              > weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              > findByName(wfpackage_tzapts_HomeImpl.java:190)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              > WLSkel.invoke(Unknown Source)
              > at
              > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > at
              > weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              > ef.java:108)
              > at
              > weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              > dSubject.java:363)
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              > 147)
              > at
              > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > a:415)
              > at
              > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > .java:30)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              > javax.ejb.FinderException: Unexpected exception while enlisting XAConnection
              > jav
              > a.sql.SQLException: XA error: XAER_PROTO : Routine was invoked in an
              > inproper co
              > ntext start() failed on resource 'flexstudio.xa.ds': XAER_PROTO : Routine
              > was in
              > voked in an inproper context
              > javax.transaction.xa.XAException
              > at ca.edbc.jdbcx.EdbcXAConnect.start(EdbcXAConnect.java:349)
              > at weblogic.jdbc.jta.DataSource.start(DataSource.java:629)
              > at
              > weblogic.transaction.internal.XAServerResourceInfo.start(XAServerReso
              > urceInfo.java:1140)
              > at
              > weblogic.transaction.internal.XAServerResourceInfo.xaStart(XAServerRe
              > sourceInfo.java:1072)
              > at
              > weblogic.transaction.internal.XAServerResourceInfo.enlist(XAServerRes
              > ourceInfo.java:240)
              > at
              > weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
              > rverTransactionImpl.java:463)
              > at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1392)
              > at
              > weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              > 334)
              > at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              > at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              > at
              > weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              > ce.java:305)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              > t(ExternalTransaction.java:53)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              > Connection(ExternalTransaction.java:90)
              > at
              > com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              > eryForList(GeneralStatement.java:123)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:613)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:587)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              > ssionImpl.java:120)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              > entImpl.java:78)
              > at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              > at
              > com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              > rkflowPackageInfoDAO.java:892)
              > at
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              > dByName(WorkflowPackageBean.java:373)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              > indByName(wfpackage_tzapts_Impl.java:335)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              > java:39)
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              > sorImpl.java:25)
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              > (BeanManagedPersistenceManager.java:152)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1784)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1756)
              > at
              > weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              > findByName(wfpackage_tzapts_HomeImpl.java:190)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              > WLSkel.invoke(Unknown Source)
              > at
              > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > at
              > weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              > ef.java:108)
              > at
              > weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              > dSubject.java:363)
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              > 147)
              > at
              > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > a:415)
              > at
              > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > .java:30)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              >
              >
              > at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1397)
              > at
              > weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
              > 334)
              > at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:396)
              > at weblogic.jdbc.jta.DataSource.connect(DataSource.java:354)
              > at
              > weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
              > ce.java:305)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.ini
              > t(ExternalTransaction.java:53)
              > at
              > com.ibatis.sqlmap.engine.transaction.external.ExternalTransaction.get
              > Connection(ExternalTransaction.java:90)
              > at
              > com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQu
              > eryForList(GeneralStatement.java:123)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:613)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(Sql
              > MapExecutorDelegate.java:587)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSe
              > ssionImpl.java:120)
              > at
              > com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapCli
              > entImpl.java:78)
              > at com.bull.flexflow.store.dao.DAO.getList(DAO.java:38)
              > at
              > com.bull.flexflow.store.dao.WorkflowPackageInfoDAO.findLikeTheName(Wo
              > rkflowPackageInfoDAO.java:892)
              > at
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              > dByName(WorkflowPackageBean.java:373)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              > indByName(wfpackage_tzapts_Impl.java:335)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              > java:39)
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              > sorImpl.java:25)
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              > (BeanManagedPersistenceManager.java:152)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1784)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1756)
              > at
              > weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              > findByName(wfpackage_tzapts_HomeImpl.java:190)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              > WLSkel.invoke(Unknown Source)
              > at
              > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > at
              > weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              > ef.java:108)
              > at
              > weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              > dSubject.java:363)
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              > 147)
              > at
              > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > a:415)
              > at
              > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > .java:30)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              >
              >
              > at
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.ejbFin
              > dByName(WorkflowPackageBean.java:383)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_Impl.ejbF
              > indByName(wfpackage_tzapts_Impl.java:335)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
              > java:39)
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
              > sorImpl.java:25)
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.ejb20.manager.BeanManagedPersistenceManager.collectionFinder
              > (BeanManagedPersistenceManager.java:152)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1784)
              > at
              > weblogic.ejb20.manager.BaseEntityManager.collectionFinder(BaseEntityM
              > anager.java:1756)
              > at
              > weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:648)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              > findByName(wfpackage_tzapts_HomeImpl.java:190)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              > WLSkel.invoke(Unknown Source)
              > at
              > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > at
              > weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              > ef.java:108)
              > at
              > weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              > dSubject.java:363)
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              > 147)
              > at
              > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > a:415)
              > at
              > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > .java:30)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              >
              >
              > ##########################################################################################
              > i hope to get more helpful information,so i turn on weblogic.debug
              > switch with
              > "-Dweblogic.Debug=weblogic.JDBCConn,weblogic.JDBCSQL,weblogic.JTA2PC,weblogic.JTAXA,weblogic.JTAJDBC"
              > the below is debug output, i dont know wht always inproper transaction
              > state.
              >
              >
              > ##########################################################################################
              >
              >
              > <Mar 14, 2006 11:11:58 AM GMT+08:00> <Info> <WebLogicServer>
              > <BEA-000213> <Addin
              > g address: 129.184.13.228 to licensed client list>
              > <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <java.lang.Excep
              > tion: TRACE: [ExecuteThread: '24' for queue:
              > 'weblogic.kernel.Default']ServerTM[
              > ServerCoordinatorDescriptor=(CoordinatorURL=weblogic81sp4_test+129.184.13.228:80
              > 01+Intetest+t3+,
              > XAResources={},NonXAResources={})].setTransactionTimeout(120).
              > at
              > weblogic.transaction.internal.TraceHelper.traceStack(TraceHelper.java
              > :28)
              > at
              > weblogic.transaction.internal.TransactionManagerImpl.setTransactionTi
              > meout(TransactionManagerImpl.java:415)
              > at
              > weblogic.ejb20.internal.MethodDescriptor.startTransaction(MethodDescr
              > iptor.java:252)
              > at
              > weblogic.ejb20.internal.MethodDescriptor.getInvokeTx(MethodDescriptor
              > .java:377)
              > at
              > weblogic.ejb20.internal.EJBRuntimeUtils.createWrapWithTxs(EJBRuntimeU
              > tils.java:324)
              > at
              > weblogic.ejb20.internal.BaseEJBHome.preHomeInvoke(BaseEJBHome.java:35
              > 8)
              > at
              > weblogic.ejb20.internal.EntityEJBHome.finder(EntityEJBHome.java:631)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl.
              > findByName(wfpackage_tzapts_HomeImpl.java:190)
              > at
              > com.bull.flexflow.workflow.workflowpackage.wfpackage_tzapts_HomeImpl_
              > WLSkel.invoke(Unknown Source)
              > at
              > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > at
              > weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
              > ef.java:108)
              > at
              > weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
              > dSubject.java:363)
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
              > 147)
              > at
              > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > a:415)
              > at
              > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > .java:30)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              >
              > <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <Xid=BEA1-0002D2
              > 21FAAB(2036170959),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,secon
              > ds since begin=0,seconds left=-1142305918) wakeUpAfterSeconds(120)>
              > <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB: null: init(t/o=120,ttl=120)>
              > <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB: null: setProperty: weblogic.transaction.name=[EJB
              > com.bull.flexflow.workflow
              > .workflowpackage.WorkflowPackageBean.findByName(java.lang.String)]>
              > <Mar 14, 2006 11:11:58 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB: null: setName: [EJB
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPacka
              > geBean.findByName(java.lang.String)]>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              > com.b
              > ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              > tring)]- -pool:flexstudio.xa.ds- > DataSource.getConnection>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              > com.b
              > ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              > tring)]- -pool:flexstudio.xa.ds- >
              > DataSource.refreshXAConnAndEnlist(inXAConn:nu
              > ll, conn:null, needsTxCtx:true)>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              > com.b
              > ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              > tring)]- -pool:flexstudio.xa.ds- > DataSource.getXAConnFromPool
              > waitSecs:117>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              > com.b
              > ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              > tring)]- -pool:flexstudio.xa.ds- <
              > DataSource.getXAConnFromPool:[EDBC-XAConnecti
              > on[5], owner=null, rmConn=EDBC-XAVirtConn[6]], Num XAConn:1>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB: [EJB
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByNa
              > me(java.lang.String)]: setLocalProperty:
              > weblogic.jdbc.jta.flexstudio.xa.ds=webl
              > ogic.jdbc.wrapper.TxInfo@1aaa2594>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000> < -tx:[EJB
              > com.b
              > ull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByName(java.lang.S
              > tring)]- -pool:flexstudio.xa.ds- XA conn assoc with
              > tx:[EDBC-XAConnection[5], ow
              > ner=flexstudio.xa.ds, rmConn=EDBC-XAVirtConn[6]]>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB: [EJB
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByNa
              > me(java.lang.String)]: enlistResource:flexstudio.xa.ds>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <ResourceDescrip
              > tor[flexstudio.xa.ds]: getOrCreate gets rd: name = flexstudio.xa.ds
              > resourceType = 2
              > registered = true
              > scUrls = weblogic81sp4_test+129.184.13.228:8001+Intetest+t3+
              > xar = flexstudio.xa.ds
              > healthy = true
              > lastAliveTimeMillis = -1
              > numActiveRequests = 0
              >
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB: [EJB
              > com.bull.flexflow.workflow.workflowpackage.WorkflowPackageBean.findByNa
              > me(java.lang.String)]: setCoordinatorURL
              > =>ServerCoordinatorDescriptor=(Coordina
              > torURL=weblogic81sp4_test+129.184.13.228:8001+Intetest+t3+,
              > XAResources={},NonXA
              > Resources={})>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB6F1049B9: enlist flexstudio.xa.ds, beforeState=new>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <BEA1-0002D221FA
              > AB6F1049B9: XA.start(rm=flexstudio.xa.ds, xar=flexstudio.xa.ds,
              > flags=TMNOFLAGS)
              >
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <ResourceDescrip
              > tor[flexstudio.xa.ds]: Resource 'flexstudio.xa.ds'
              > setTransactionTimeout(120) no
              > t called. callSetTransactionTimeout=false,
              > supportsSetTransactionTimeout=true>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JTA> <BEA-110027>
              > <ResourceDescrip
              > tor[flexstudio.xa.ds]: startResourceUse, Number of active requests:1, last
              > alive
              > time:0 ms ago.>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              > < -tx:null- -poo
              > l:flexstudio.xa.ds- > XAConnection.getXAResource,
              > xaConn:EDBC-XAConnection[5]>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              > < -tx:null- -poo
              > l:flexstudio.xa.ds- < XAConnection.getXAResource,
              > xaRes:EDBC-XAConnection[5]>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              > < -tx:null- -poo
              > l:flexstudio.xa.ds- >
              > XAResource.start(Xid:bea1-0002d221faab6f1049b9-666c6578737
              > 47564696f2e78612e6473, flags:TMNOFLAGS), xaRes:EDBC-XAConnection[5]>
              > <Mar 14, 2006 11:12:01 AM GMT+08:00> <Debug> <JDBC XA> <000000>
              > < -tx:null- -poo
              > l:flexstudio.xa.ds- < XA error: XAER_PROTO : Routine was invoked in an
              > inproper
              > context
              > javax.transaction.xa.XAException
              > at ca.edbc.jdbcx.EdbcXAConnect.start(EdbcXAConnect.java:349)
              > at web

  • Query under Transaction Exception....

    Hello all:
    I have a exception for using kodo3.0
    e.g
    GroupSetting groupSetting = null;
    String filter = "this.organGroup.groupID == groupID";
    String parameters = "Integer groupID";
    Collection col = this.getJdoTemplate().find(GroupSetting.class, filter,
    parameters, new Object[] { new Integer(groupID)});
         Iterator it = col.iterator();
         while (it.hasNext()) {
              groupSetting = (GroupSetting) it.next();
         return groupSetting;
    I use Spring JdoDaoSupport,
    when i let this code under a transaction,some Exception happen..
    but if leave this code under a transction,there allways good...
    I think mybe the result is Optimistic transaction....
    test.GroupSettingBusinessTest -
    org.springframework.jdbc.BadSqlGrammarException: Bad SQL grammar [] in
    task 'JDO operation'; nested exception is
    com.solarmetric.jdbc.ReportingSQLException: DB2 SQL error: SQLCODE: -511,
    SQLSTATE: 42829, SQLERRMC: null {prepstmnt 107840951 SELECT
    t0.GROUPSETTINGID, t0.ALLOWDRAW, t0.ALLOWSTRIKE, t0.ALLOWTRANSFER,
    t0.ASCENDONLY, t0.AUTOAPPROVE, t0.BARVISIBLE, t0.DEFAULTLEVELNAME,
    t0.LASTMODIFY, t0.MAXDRAW, t0.MAXRECHARGE, t0.MAXROWS, t0.MAXSTRIKE,
    t0.MAXTRANSFER, t0.MINDRAW, t0.MINRECHARGE, t0.MINSTRIKE, t0.MINTRANSFER,
    t0.GROUPID, t0.RECHARGEABLE, t0.USERTYPEMODIFICATION FROM
    OLTP.GROUPSETTING t0 INNER JOIN OLTP.ORGANGROUP t1 ON t0.GROUPID =
    t1.GROUPID WHERE (t1.GROUPID = ?) FOR UPDATE [reused=0]} [code=-511,
    state=42829]
    org.springframework.jdbc.BadSqlGrammarException: Bad SQL grammar [] in
    task 'JDO operation'; nested exception is
    com.solarmetric.jdbc.ReportingSQLException: DB2 SQL error: SQLCODE: -511,
    SQLSTATE: 42829, SQLERRMC: null {prepstmnt 107840951 SELECT
    t0.GROUPSETTINGID, t0.ALLOWDRAW, t0.ALLOWSTRIKE, t0.ALLOWTRANSFER,
    t0.ASCENDONLY, t0.AUTOAPPROVE, t0.BARVISIBLE, t0.DEFAULTLEVELNAME,
    t0.LASTMODIFY, t0.MAXDRAW, t0.MAXRECHARGE, t0.MAXROWS, t0.MAXSTRIKE,
    t0.MAXTRANSFER, t0.MINDRAW, t0.MINRECHARGE, t0.MINSTRIKE, t0.MINTRANSFER,
    t0.GROUPID, t0.RECHARGEABLE, t0.USERTYPEMODIFICATION FROM
    OLTP.GROUPSETTING t0 INNER JOIN OLTP.ORGANGROUP t1 ON t0.GROUPID =
    t1.GROUPID WHERE (t1.GROUPID = ?) FOR UPDATE [reused=0]} [code=-511,
    state=42829]
    com.solarmetric.jdbc.ReportingSQLException: DB2 SQL error: SQLCODE: -511,
    SQLSTATE: 42829, SQLERRMC: null {prepstmnt 107840951 SELECT
    t0.GROUPSETTINGID, t0.ALLOWDRAW, t0.ALLOWSTRIKE, t0.ALLOWTRANSFER,
    t0.ASCENDONLY, t0.AUTOAPPROVE, t0.BARVISIBLE, t0.DEFAULTLEVELNAME,
    t0.LASTMODIFY, t0.MAXDRAW, t0.MAXRECHARGE, t0.MAXROWS, t0.MAXSTRIKE,
    t0.MAXTRANSFER, t0.MINDRAW, t0.MINRECHARGE, t0.MINSTRIKE, t0.MINTRANSFER,
    t0.GROUPID, t0.RECHARGEABLE, t0.USERTYPEMODIFICATION FROM
    OLTP.GROUPSETTING t0 INNER JOIN OLTP.ORGANGROUP t1 ON t0.GROUPID =
    t1.GROUPID WHERE (t1.GROUPID = ?) FOR UPDATE [reused=0]} [code=-511,
    state=42829]
         at
    com.solarmetric.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:67)
         at
    com.solarmetric.jdbc.LoggingConnectionDecorator.access$400(LoggingConnectionDecorator.java:19)
         at
    com.solarmetric.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(LoggingConnectionDecorator.java:629)
         at
    com.solarmetric.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:351)
         at
    com.solarmetric.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:338)
         at
    kodo.jdbc.runtime.JDBCStoreManager.getResultInternal(JDBCStoreManager.java:843)
         at kodo.jdbc.runtime.JDBCStoreManager.getResult(JDBCStoreManager.java:804)
         at
    kodo.jdbc.runtime.AbstractSelectResultObjectProvider.open(AbstractSelectResultObjectProvider.java:84)
         at com.solarmetric.rop.WindowResultList.<init>(WindowResultList.java:46)
         at
    kodo.jdbc.runtime.JDBCFetchConfigurationImpl.newResultList(JDBCFetchConfigurationImpl.java:136)
         at
    kodo.runtime.CopyOnWriteFetchConfiguration.newResultList(CopyOnWriteFetchConfiguration.java:159)
         at kodo.query.AbstractQuery.executeWithMap(AbstractQuery.java:718)
         at kodo.query.AbstractQuery.executeWithArray(AbstractQuery.java:640)
         at
    org.springframework.orm.jdo.JdoTemplate$12.doInJdo(JdoTemplate.java:367)
         at org.springframework.orm.jdo.JdoTemplate.execute(JdoTemplate.java:199)
         at
    org.springframework.orm.jdo.JdoTemplate.executeFind(JdoTemplate.java:180)
         at org.springframework.orm.jdo.JdoTemplate.find(JdoTemplate.java:359)
         at org.springframework.orm.jdo.JdoTemplate.find(JdoTemplate.java:353)
         at
    com.hintsoft.pubwin.net.bean.member.persistence.dao.jdo.GroupSettingDaoJdo.findGroupSettingPersistence(GroupSettingDaoJdo.java:47)
         at
    com.hintsoft.pubwin.net.bean.member.persistence.dao.jdo.GroupSettingDaoJdo.findGroupSetting(GroupSettingDaoJdo.java:61)
         at
    com.hintsoft.pubwin.net.bean.member.service.GroupSettingBusiness.findGroupSetting(GroupSettingBusiness.java:81)
         at
    com.hintsoft.pubwin.net.bean.member.service.GroupSettingBusiness$$FastClassByCGLIB$$80d45d10.invoke(<generated>)
         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
         at
    org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
         at
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
         at
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
         at
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
         at
    org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:632)
         at
    com.hintsoft.pubwin.net.bean.member.service.GroupSettingBusiness$$EnhancerByCGLIB$$e18f0ffa.findGroupSetting(<generated>)
         at
    com.hintsoft.pubwin.net.bean.member.testcase.test.GroupSettingBusinessTest.testFindGroupSetting(GroupSettingBusinessTest.java:69)
         at java.lang.reflect.Method.invoke(Native Method)
         at junit.framework.TestCase.runTest(TestCase.java:154)
         at junit.framework.TestCase.runBare(TestCase.java:127)
         at junit.framework.TestResult$1.protect(TestResult.java:106)
         at junit.framework.TestResult.runProtected(TestResult.java:124)
         at junit.framework.TestResult.run(TestResult.java:109)
         at junit.framework.TestCase.run(TestCase.java:118)
         at junit.framework.TestSuite.runTest(TestSuite.java:208)
         at junit.framework.TestSuite.run(TestSuite.java:203)
         at
    org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:392)
         at
    org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:276)
         at
    org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:167)

    Hi,
    Could you clarify whether or not you're in a transaction when this
    exception occurs? I noticed that there is a FOR UPDATE at the end of
    the statement. That probably shouldn't be there outside of a
    transaction. Please let us know if that's the problem.
    Thanks,
    Greg
    jjyao wrote:
    Hello all:
    I have a exception for using kodo3.0
    e.g
    GroupSetting groupSetting = null;
    String filter = "this.organGroup.groupID == groupID";
    String parameters = "Integer groupID";
    Collection col = this.getJdoTemplate().find(GroupSetting.class, filter,
    parameters, new Object[] { new Integer(groupID)});
         Iterator it = col.iterator();
         while (it.hasNext()) {
              groupSetting = (GroupSetting) it.next();
         return groupSetting;
    I use Spring JdoDaoSupport,
    when i let this code under a transaction,some Exception happen..
    but if leave this code under a transction,there allways good...
    I think mybe the result is Optimistic transaction....
    test.GroupSettingBusinessTest -
    org.springframework.jdbc.BadSqlGrammarException: Bad SQL grammar [] in
    task 'JDO operation'; nested exception is
    com.solarmetric.jdbc.ReportingSQLException: DB2 SQL error: SQLCODE: -511,
    SQLSTATE: 42829, SQLERRMC: null {prepstmnt 107840951 SELECT
    t0.GROUPSETTINGID, t0.ALLOWDRAW, t0.ALLOWSTRIKE, t0.ALLOWTRANSFER,
    t0.ASCENDONLY, t0.AUTOAPPROVE, t0.BARVISIBLE, t0.DEFAULTLEVELNAME,
    t0.LASTMODIFY, t0.MAXDRAW, t0.MAXRECHARGE, t0.MAXROWS, t0.MAXSTRIKE,
    t0.MAXTRANSFER, t0.MINDRAW, t0.MINRECHARGE, t0.MINSTRIKE, t0.MINTRANSFER,
    t0.GROUPID, t0.RECHARGEABLE, t0.USERTYPEMODIFICATION FROM
    OLTP.GROUPSETTING t0 INNER JOIN OLTP.ORGANGROUP t1 ON t0.GROUPID =
    t1.GROUPID WHERE (t1.GROUPID = ?) FOR UPDATE [reused=0]} [code=-511,
    state=42829]
    org.springframework.jdbc.BadSqlGrammarException: Bad SQL grammar [] in
    task 'JDO operation'; nested exception is
    com.solarmetric.jdbc.ReportingSQLException: DB2 SQL error: SQLCODE: -511,
    SQLSTATE: 42829, SQLERRMC: null {prepstmnt 107840951 SELECT
    t0.GROUPSETTINGID, t0.ALLOWDRAW, t0.ALLOWSTRIKE, t0.ALLOWTRANSFER,
    t0.ASCENDONLY, t0.AUTOAPPROVE, t0.BARVISIBLE, t0.DEFAULTLEVELNAME,
    t0.LASTMODIFY, t0.MAXDRAW, t0.MAXRECHARGE, t0.MAXROWS, t0.MAXSTRIKE,
    t0.MAXTRANSFER, t0.MINDRAW, t0.MINRECHARGE, t0.MINSTRIKE, t0.MINTRANSFER,
    t0.GROUPID, t0.RECHARGEABLE, t0.USERTYPEMODIFICATION FROM
    OLTP.GROUPSETTING t0 INNER JOIN OLTP.ORGANGROUP t1 ON t0.GROUPID =
    t1.GROUPID WHERE (t1.GROUPID = ?) FOR UPDATE [reused=0]} [code=-511,
    state=42829]
    com.solarmetric.jdbc.ReportingSQLException: DB2 SQL error: SQLCODE: -511,
    SQLSTATE: 42829, SQLERRMC: null {prepstmnt 107840951 SELECT
    t0.GROUPSETTINGID, t0.ALLOWDRAW, t0.ALLOWSTRIKE, t0.ALLOWTRANSFER,
    t0.ASCENDONLY, t0.AUTOAPPROVE, t0.BARVISIBLE, t0.DEFAULTLEVELNAME,
    t0.LASTMODIFY, t0.MAXDRAW, t0.MAXRECHARGE, t0.MAXROWS, t0.MAXSTRIKE,
    t0.MAXTRANSFER, t0.MINDRAW, t0.MINRECHARGE, t0.MINSTRIKE, t0.MINTRANSFER,
    t0.GROUPID, t0.RECHARGEABLE, t0.USERTYPEMODIFICATION FROM
    OLTP.GROUPSETTING t0 INNER JOIN OLTP.ORGANGROUP t1 ON t0.GROUPID =
    t1.GROUPID WHERE (t1.GROUPID = ?) FOR UPDATE [reused=0]} [code=-511,
    state=42829]
         at
    com.solarmetric.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:67)
         at
    com.solarmetric.jdbc.LoggingConnectionDecorator.access$400(LoggingConnectionDecorator.java:19)
         at
    com.solarmetric.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(LoggingConnectionDecorator.java:629)
         at
    com.solarmetric.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:351)
         at
    com.solarmetric.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:338)
         at
    kodo.jdbc.runtime.JDBCStoreManager.getResultInternal(JDBCStoreManager.java:843)
         at kodo.jdbc.runtime.JDBCStoreManager.getResult(JDBCStoreManager.java:804)
         at
    kodo.jdbc.runtime.AbstractSelectResultObjectProvider.open(AbstractSelectResultObjectProvider.java:84)
         at com.solarmetric.rop.WindowResultList.<init>(WindowResultList.java:46)
         at
    kodo.jdbc.runtime.JDBCFetchConfigurationImpl.newResultList(JDBCFetchConfigurationImpl.java:136)
         at
    kodo.runtime.CopyOnWriteFetchConfiguration.newResultList(CopyOnWriteFetchConfiguration.java:159)
         at kodo.query.AbstractQuery.executeWithMap(AbstractQuery.java:718)
         at kodo.query.AbstractQuery.executeWithArray(AbstractQuery.java:640)
         at
    org.springframework.orm.jdo.JdoTemplate$12.doInJdo(JdoTemplate.java:367)
         at org.springframework.orm.jdo.JdoTemplate.execute(JdoTemplate.java:199)
         at
    org.springframework.orm.jdo.JdoTemplate.executeFind(JdoTemplate.java:180)
         at org.springframework.orm.jdo.JdoTemplate.find(JdoTemplate.java:359)
         at org.springframework.orm.jdo.JdoTemplate.find(JdoTemplate.java:353)
         at
    com.hintsoft.pubwin.net.bean.member.persistence.dao.jdo.GroupSettingDaoJdo.findGroupSettingPersistence(GroupSettingDaoJdo.java:47)
         at
    com.hintsoft.pubwin.net.bean.member.persistence.dao.jdo.GroupSettingDaoJdo.findGroupSetting(GroupSettingDaoJdo.java:61)
         at
    com.hintsoft.pubwin.net.bean.member.service.GroupSettingBusiness.findGroupSetting(GroupSettingBusiness.java:81)
         at
    com.hintsoft.pubwin.net.bean.member.service.GroupSettingBusiness$$FastClassByCGLIB$$80d45d10.invoke(<generated>)
         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
         at
    org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
         at
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
         at
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
         at
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
         at
    org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:632)
         at
    com.hintsoft.pubwin.net.bean.member.service.GroupSettingBusiness$$EnhancerByCGLIB$$e18f0ffa.findGroupSetting(<generated>)
         at
    com.hintsoft.pubwin.net.bean.member.testcase.test.GroupSettingBusinessTest.testFindGroupSetting(GroupSettingBusinessTest.java:69)
         at java.lang.reflect.Method.invoke(Native Method)
         at junit.framework.TestCase.runTest(TestCase.java:154)
         at junit.framework.TestCase.runBare(TestCase.java:127)
         at junit.framework.TestResult$1.protect(TestResult.java:106)
         at junit.framework.TestResult.runProtected(TestResult.java:124)
         at junit.framework.TestResult.run(TestResult.java:109)
         at junit.framework.TestCase.run(TestCase.java:118)
         at junit.framework.TestSuite.runTest(TestSuite.java:208)
         at junit.framework.TestSuite.run(TestSuite.java:203)
         at
    org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:392)
         at
    org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:276)
         at
    org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:167)

  • Rollback CMP Transaction

    Hi
    I am checking for one object and if that is null i want to throw Application exception from my EJB. Now if i thorw application exception container does not rollback the data. We need to set ctx.setRollbackOnly.
    say i have method
    public void setData(ValueObject MyVO)
    if(MyVO!=null)
    // do something
    else
    ctx.setRollbackOnly()
    throw new myexception("Null obj VO");
    am i on the right track. I beleive this will allow me to throw application exception as well as rollback the transcation.
    I am using weblogic 7.0 with ejb2.0 and CMR relations. All my transactions attributes are set to Required
    Pranav

    Hey thanks for your input.
    But just a quick question for you.
    Can i create a application exception extends EJBException
    so that now when i thorw MyExp it will not have to call ctx.setRollbackOnly.
    Like this
    TestEJB.java
    public void setData(MyVO vo)
    if(vo==null)
    thorw new MyExp("Cannot be null");
    in this even if i dont call rollback on context still it will rollback cos now my exception is child of ejbexception(system exception)
    am i right
    which is the best way to do though.
    This one or one which i asked as first quesrtion
    thanks
    pranav

  • [EMF Transaction] Exception during rollback

    On a number of occasions we have faced some exception during rollback, if our code encounters an exception while processing the transaction.
    Here is a very typical example:
    org.eclipse.emf.common.util.BasicEList$BasicIndexOutOfBoundsException: index=1, size=1
    at org.eclipse.emf.common.util.BasicEList.remove(BasicEList.java:602)
    at org.eclipse.emf.common.notify.impl.NotifyingListImpl.doRemove(NotifyingListImpl.java:756)
    at org.eclipse.emf.common.notify.impl.NotifyingListImpl.remove(NotifyingListImpl.java:707)
    at org.eclipse.emf.ecore.change.impl.ListChangeImpl.process(ListChangeImpl.java:546)
    at org.eclipse.emf.ecore.change.impl.ListChangeImpl.apply(ListChangeImpl.java:476)
    at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:701)
    at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.process(FeatureChangeImpl.java:611)
    at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:518)
    at org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:493)
    at org.eclipse.emf.ecore.change.impl.ChangeDescriptionImpl.apply(ChangeDescriptionImpl.java:300)
    at org.eclipse.emf.transaction.util.CompositeChangeDescription.apply(CompositeChangeDescription.java:104)
    at org.eclipse.emf.transaction.impl.TransactionImpl.doRollback(TransactionImpl.java:570)
    at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:417)
    at org.eclipse.emf.transaction.impl.TransactionalCommandStackImpl.doExecute(TransactionalCommandStackImpl.java:70)
    at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)
    at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:219)
    at org.eclipse.emf.emfstore.internal.client.transaction.EMFStoreTransactionalCommandStack.execute(EMFStoreTransactionalCommandStack.java:52)
    This seems to be caused by an attempt to remove an element from a list. Debugging here is showing that the rollback is trying to apply the undo changes produced by the transaction recorder. But the element that it is attempting to remove doesn't exist in the list, and thus the error. I suspect that this is because when the initial exception occurred that this command had not been executed yet. If that is the case, I would expect the rollback to have a way to check for the commands that have completed and to reverse them, but to ignore any commands that have never completed yet. Is it what I might be saying and what is the solution?
    I'm adding below portion of the stacktrace that represents the original exception that triggered the rollback. This might help a bit in understanding the situation.
    Caused by: java.lang.ClassCastException: ....
    at com.castortech.util.emf.VersioningUtils.runInCompositeOperation(VersioningUtils.java:83)
    at org.eclipse.sirius.table.business.internal.dialect.TableDialectServices.refresh(TableDialectServices.java:272)
    at org.eclipse.sirius.business.internal.dialect.DialectManagerImpl.refresh(DialectManagerImpl.java:106)
    at org.eclipse.sirius.business.api.dialect.command.RefreshRepresentationsCommand.doExecute(RefreshRepresentationsCommand.java:85)
    at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)
    at org.eclipse.emf.common.command.CompoundCommand.execute(CompoundCommand.java:261)
    at org.eclipse.sirius.business.internal.session.SessionEventBrokerImpl$PreCommitPriorityNotifyListenersCommand.launchCommands(SessionEventBrokerImpl.java:251)
    at org.eclipse.sirius.business.internal.session.SessionEventBrokerImpl$PreCommitPriorityNotifyListenersCommand.doExecute(SessionEventBrokerImpl.java:242)
    at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)
    at org.eclipse.emf.transaction.util.TriggerCommand.execute(TriggerCommand.java:113)
    at org.eclipse.emf.transaction.impl.TransactionalCommandStackImpl.executeTriggers(TransactionalCommandStackImpl.java:218)
    at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
    at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
    at org.eclipse.emf.transaction.impl.TransactionalCommandStackImpl.doExecute(TransactionalCommandStackImpl.java:70)
    at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)
    at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:219)
    at org.eclipse.emf.emfstore.internal.client.transaction.EMFStoreTransactionalCommandStack.execute(EMFStoreTransactionalCommandStack.java:52)
    Thanks
    Alain

    Hi, Alain,
    Indeed, the transaction will have difficulty rolling back if the
    ChangeDescription cannot successfully be applied. However, a
    ChangeDescription records only changes that actually are effected in
    the model. I don't know how it could record changes that haven't yet
    occurred.
    Does your model have custom implementations of some of these list
    features, as UML2 does, that perhaps coordinate changes with other
    features? Could it be that undoing some changes causes side-effects in
    others that then invalidate changes recorded in those?
    Or are there non-ChangeDescription-based commands being undone by the
    transaction that could interfere with ChangeDescriptions?
    There's not really much that a transaction can do to validate the
    applicability of a ChangeDescription ... it seems to me that it's up to
    the model and the commands captured by a transaction to ensure that
    undo will happen correctly. Although, perhaps failed rollback could
    somehow be handled more gracefully? I'm not sure.
    Cheers,
    Christian
    On 2015-08-08 18:12:21 +0000, Alain Picard said:
    > On a number of occasions we have faced some exception during rollback,
    > if our code encounters an exception while processing the transaction.
    > Here is a very typical example:
    >
    >
    > org.eclipse.emf.common.util.BasicEList$BasicIndexOutOfBoundsException:
    > index=1, size=1
    > at org.eclipse.emf.common.util.BasicEList.remove(BasicEList.java:602)
    > at
    > org.eclipse.emf.common.notify.impl.NotifyingListImpl.doRemove(NotifyingListImpl.java:756)
    >
    > at
    > org.eclipse.emf.common.notify.impl.NotifyingListImpl.remove(NotifyingListImpl.java:707)
    >
    > at
    > org.eclipse.emf.ecore.change.impl.ListChangeImpl.process(ListChangeImpl.java:546)
    >
    > at
    > org.eclipse.emf.ecore.change.impl.ListChangeImpl.apply(ListChangeImpl.java:476)
    >
    > at
    > org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:701)
    >
    > at
    > org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.process(FeatureChangeImpl.java:611)
    >
    > at
    > org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:518)
    >
    > at
    > org.eclipse.emf.ecore.change.impl.FeatureChangeImpl.apply(FeatureChangeImpl.java:493)
    >
    > at
    > org.eclipse.emf.ecore.change.impl.ChangeDescriptionImpl.apply(ChangeDescriptionImpl.java:300)
    >
    > at
    > org.eclipse.emf.transaction.util.CompositeChangeDescription.apply(CompositeChangeDescription.java:104)
    >
    > at
    > org.eclipse.emf.transaction.impl.TransactionImpl.doRollback(TransactionImpl.java:570)
    >
    > at
    > org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:417)
    >
    > at
    > org.eclipse.emf.transaction.impl.TransactionalCommandStackImpl.doExecute(TransactionalCommandStackImpl.java:70)
    >
    > at
    > org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)
    >
    > at
    > org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:219)
    >
    > at
    > org.eclipse.emf.emfstore.internal.client.transaction.EMFStoreTransactionalCommandStack.execute(EMFStoreTransactionalCommandStack.java:52)
    >
    >
    >
    > This seems to be caused by an attempt to remove an element from a list.
    > Debugging here is showing that the rollback is trying to apply the undo
    > changes produced by the transaction recorder. But the element that it
    > is attempting to remove doesn't exist in the list, and thus the error.
    > I suspect that this is because when the initial exception occurred that
    > this command had not been executed yet. If that is the case, I would
    > expect the rollback to have a way to check for the commands that have
    > completed and to reverse them, but to ignore any commands that have
    > never completed yet. Is it what I might be saying and what is the
    > solution?
    >
    > I'm adding below portion of the stacktrace that represents the original
    > exception that triggered the rollback. This might help a bit in
    > understanding the situation.
    >
    > Caused by: java.lang.ClassCastException: ....
    > ...
    > at
    > com.castortech.util.emf.VersioningUtils.runInCompositeOperation(VersioningUtils.java:83)
    >
    > at
    > org.eclipse.sirius.table.business.internal.dialect.TableDialectServices.refresh(TableDialectServices.java:272)
    >
    > at
    > org.eclipse.sirius.business.internal.dialect.DialectManagerImpl.refresh(DialectManagerImpl.java:106)
    >
    > at
    > org.eclipse.sirius.business.api.dialect.command.RefreshRepresentationsCommand.doExecute(RefreshRepresentationsCommand.java:85)
    >
    > at
    > org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)
    >
    > at
    > org.eclipse.emf.common.command.CompoundCommand.execute(CompoundCommand.java:261)
    >
    > at
    > org.eclipse.sirius.business.internal.session.SessionEventBrokerImpl$PreCommitPriorityNotifyListenersCommand.launchCommands(SessionEventBrokerImpl.java:251)
    >
    > at
    > org.eclipse.sirius.business.internal.session.SessionEventBrokerImpl$PreCommitPriorityNotifyListenersCommand.doExecute(SessionEventBrokerImpl.java:242)
    >
    > at
    > org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)
    >
    > at
    > org.eclipse.emf.transaction.util.TriggerCommand.execute(TriggerCommand.java:113)
    >
    > at
    > org.eclipse.emf.transaction.impl.TransactionalCommandStackImpl.executeTriggers(TransactionalCommandStackImpl.java:218)
    >
    > at
    > org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.precommit(TransactionalEditingDomainImpl.java:712)
    >
    > at
    > org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:414)
    >
    > at
    > org.eclipse.emf.transaction.impl.TransactionalCommandStackImpl.doExecute(TransactionalCommandStackImpl.java:70)
    >
    > at
    > org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)
    >
    > at
    > org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:219)
    >
    > at
    > org.eclipse.emf.emfstore.internal.client.transaction.EMFStoreTransactionalCommandStack.execute(EMFStoreTransactionalCommandStack.java:52)
    >
    >
    >
    > Thanks
    > Alain

  • JDBC Transaction - Exception management

    Does anybody know how to catch ALL the SQL errors that could appear in a transaction composed for instance of 10 insert ?

    List sqlExceptions = new ArrayList();
    for(int i=0; i<commands.length; i++) {
      try {
        getStatement().executeUpdate(command);
    } catch(SQLException ex) {
    sqlExceptions.add(ex);

  • Transaction Aborted Exceptions are seen when service downloading data

    Hi,
    We are getting two different types of exceptions while one service trying to download data from another service
    There are two scenarios where we are getting these transaction exceptions that are seen when client's service downloads data from server's service.
    1. The first kind of transaction exception is seen when service is trying to send the message to messaging queue in the InitialReceiveNext() method. The queue.send method throws this exception and the stack trace is as mentioned below:
    04 Jun 2014 19:16:12,805 [BridgeExchanger] TRACE - Sending queue message 00000000-0000-0000-0000-000000000000\0 to queue private$\msgqueue
    04 Jun 2014 19:16:12,806 [ClientBridgeEndpoint] ERROR - Error occurred during Receive!
    System.Transactions.TransactionException: The operation is not valid for the state of the transaction. ---> System.TimeoutException: Transaction Timeout
    — End of inner exception stack trace —
    at System.Transactions.TransactionState.Promote(InternalTransaction tx)
    at System.Transactions.Transaction.Promote()
    at System.Transactions.TransactionInterop.ConvertToOletxTransaction(Transaction transaction)
    at System.Transactions.TransactionInterop.GetDtcTransaction(Transaction transaction)
    at System.Messaging.MessageQueue.StaleSafeSendMessage(MQPROPS properties, IntPtr transaction)
    at System.Messaging.MessageQueue.SendInternal(Object obj, MessageQueueTransaction internalTransaction, MessageQueueTransactionType transactionType)
    at CI.Platform.Bus.Bridge.Client.BridgeExchanger.InitialReceiveNext(DownloadEndpoint endpoint)
    at CI.Platform.Bus.Bridge.Client.BridgeExchanger.ReceiveNext()
    at CI.Platform.Bus.Bridge.Client.ClientBridgeEndpoint.Exchange(Object state)
    2. The second kind of exception is seen at the transaction.complete statement in the InitialReceiveNext() method. The stack trace is as shown below:
    04 Jun 2014 23:15:59,152 [BridgeExchanger] DEBUG - Skipping the download message as the message is already downloaded..No new message is added to queue private$\msgqueue
    04 Jun 2014 23:15:59,153 [ClientBridgeEndpoint] ERROR - Error occurred during Receive!
    System.Transactions.TransactionAbortedException: The transaction has aborted. ---> System.TimeoutException: Transaction Timeout
    — End of inner exception stack trace —
    at System.Transactions.TransactionStateAborted.BeginCommit(InternalTransaction tx, Boolean asyncCommit, AsyncCallback asyncCallback, Object asyncState)
    at System.Transactions.CommittableTransaction.Commit()
    at System.Transactions.TransactionScope.InternalDispose()
    at System.Transactions.TransactionScope.Dispose()
    at CI.Platform.Bus.Bridge.Client.BridgeExchanger.InitialReceiveNext(DownloadEndpoint endpoint)
    at CI.Platform.Bus.Bridge.Client.BridgeExchanger.ReceiveNext()
    at CI.Platform.Bus.Bridge.Client.ClientBridgeEndpoint.Exchange(Object state)
    If anybody has any insight please reply.
    Thanks in advance!!!

    Hello,
    Your two questions are both related to MSMQ forum. Please post threads on that forum for more effective response. Please refer to
    http://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/home?forum=msmq. Thank you for understanding.
    Regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • MDB Transaction

    Hi,
    I'm having some issues in same cases with MDB transactions on WL. I have an MDB deployed on a 9.2 WL defined as a CMP with auto-acknowledge in the EJB descriptor (using EJB 2.1 standards) which listens on a queue which is defined in the local WL JMS module and mapped to an external Tibco EMS queue.
    Used descriptor configuration :
    <messaging-type>javax.jms.MessageListener</messaging-type>
    <transaction-type>Container</transaction-type>
    <message-destination-type>javax.jms.Queue</message-destination-type>
    <activation-config>
    <activation-config-property>
    <activation-config-property-name>destinationType</activation-config-property-name>
    <activation-config-property-value>javax.jms.Queue</activation-config-property-value>
    </activation-config-property>
    <activation-config-property>
    <activation-config-property-name>acknowledgeMode</activation-config-property-name>
    <activation-config-property-value>Auto-acknowledge</activation-config-property-value>
    </activation-config-property>
    </activation-config>
    The MDB processes the message, accesses a DB and sends it of the an external system. When no exception happened the MDB method finishes and normally the container acknowledges
    This all works great untill we put some load on the queue. Sometimes we note that a JMS message gets stuck in the input queue when lots of messages are being put on the input queue. We can trace that such messages actually were picked up by the MDB and processed to a certain extend.
    Sometimes the processing log trace just stops in the middle of processing. Sometimes the entire processing log trace is present. However the JMS messages are kept in the input queue and seem to locked (they can't be flushed out as long as the component is still running).
    It looks like the messages are awaiting acknowledgement from the WL container manager but somehow the transaction got lost and never got back to the external EMS to acknowledge the message in the input queue.
    I was wondering if there is a way to monitor CMP transactions or the status of the container manager? As far as I know the container manager always tries to contact the remote EMS server to acknowledge the message in this setup. What would happen if the remote EMS server would be overloaded and could not respond back to the WL container manager to confirm message acknowledgment?

    Thanks for the reply. There are no errors what so ever regarding MDB issues. Not in the weblogic / console logging, nor in the logging of the component itself.
    The MDB itself is setup to have 16 concurrent beans per component deployment. The component is clustered over 4 server instances. So there are quite some concurrent MDBs running. However since the messages get stuck for weeks eventhough the component only has bursts of messages to process, one would think that the the stuck messages would be processed whenever the component has some spare time (which it has a lot between the bursts).
    Therefor i doubt it has anything to do with too little MDBs running. But frankly I have no idea what's wrong.

Maybe you are looking for

  • Forte Transaction Management & 2PC

    Forte Transaction Management & 2PC The main purpose of 2PC in a distributed transaction manager is to enable recovery from a failure that occurs during the window of transaction commit processing. The Forte transaction manager was built with this in

  • How to instal camera raw in mac

    Hi, I'd be obliged if someone could advise me how to instal camera raw 8 into an imac. many thanks

  • PGW2200 - CCME interconnection via SIP

    I'm trying to connect Cisco CallManager Express directly to MGC without using proxy server. Everything is working perfect, i'm able to place calls in both directions. When i'm turning call forwarding for all calls on ephone-dn, it's working without a

  • BRFPlus - Possible for business users to change the rules ?

    Hi, 1) Is it possible for business users to change the rules in decision table, tree, formula etc? 2) If yes, what are the steps to achieve it? Thanks. - julius

  • Question from Brand New User / Thanks

    Hi - I'm a new smart phone user (Samsung Galaxy S III) with a very basic question (thanks).  I have the 4GB data plan.  When I click the "Internet" icon on the Home screen (and connect using the phone, instead of a Wi-Fi network), does my usage of da