6 Replies Latest reply on Jul 2, 2013 4:16 AM by bondchan921

    About EJB 2.1 Transaction Rollback

    bondchan921

      Hi

       

      I can't understand the following server log from executing the code

      1)method removeTradeBySqlAndLockByAgreementId() call method removeTradesBySqlWithNewTransation() both are 'require-new' transaction methods

       

      2)SQLException throw in removeTradesBySqlWithNewTransation() in line# 2181 catched and re-throw an RuntimeException, which will only cause this method rollback. then back to the caller method removeTradeBySqlAndLockByAgreementId(), but subsequently log shows flow goto removeTradesBySqlWithNewTransation() line#2123.  I have no ideal why the flow going back...

       

       


       

      /***code****/

      /**

      * @ejb:bean    type="Stateless"

      *              local-jndi-name="ejb/collateral/persistence/trademanager"

      *              name="TradePersistenceManager"

      *              transaction-type="Container"

      *              view-type="local"

      *              display-name="TradePersistenceManager"

      * @ejb:permission unchecked="true"

      *

      */

      public class TradePersistenceManagerBean extends AbstractStatelessSessionBean implements SessionBean {              

       

           ....

       

      2104    /**

      2105     * @ejb:interface-method view-type="local"

      2106     * @ejb:transaction type="RequiresNew"

      2107     */

      2108    public void removeTradesBySqlWithNewTransation(List<String> tradeRefList, long system, long agreementId,                      ///************called by the next method paste below.

      2109            java.util.Date todayInAgreementTimeZone, TRule tRule) {

      2110

      2111        PreparedStatement calcStmt = null;

      2112        PreparedStatement mtmStmt = null;

      2113        PreparedStatement iaStmt = null;

      2114        PreparedStatement miscStmt = null;

      2115        PreparedStatement ccpStmt = null;

      2116        PreparedStatement tradeStmt = null;

      2117        PreparedStatement updateDeletedDateStmt = null;

      2118        PreparedStatement deleteStmt = null;

      2119        Connection con = null;

      2120

      2121        java.util.Date today = new java.util.Date();

      2122        try {

      2123            con = ds.getConnection();                                  //*** Have no ideal why the execute flow come back here again, after throw the RuntimeException later.

      2124            boolean isDateAffected = tRule != TRule.None && tRule != TRule.TM1;// T-2 and T-3 agreements are affected

      2125            TRule calTRule = TRule.getTRuleByValue(tRule.getValue() + 1);

      2126            java.util.Date stmtValuationDate = ValuationDateCalculator.getCalcDate(agreementId, calTRule, today).getValuationDate();

      2127            java.sql.Date valuationDate = new java.sql.Date(stmtValuationDate.getTime());

      2128            java.sql.Date todaySqlDateInAgreementTimeZone = new java.sql.Date(todayInAgreementTimeZone.getTime());

      2129            if (isDateAffected) {

      2130                  updateDeletedDateStmt = con.prepareStatement(SQLConstants.UPDATE_TRADE_BY_SYSTEM_AND_TRADEREF_SQL);

      2131                  deleteStmt = con.prepareStatement(SQLConstants.DELETE_TRADE_BY_SYSTEM_AND_TRADEREF_NOT_NORMAL_SQL);

      2132            } else {

      2133                   calcStmt = con.prepareStatement(SQLConstants.DELETE_TRADE_CALC_BY_SYSTEM_AND_TRADEREF_SQL);

      2134                 mtmStmt = con.prepareStatement(SQLConstants.DELETE_TRADE_MTM_BY_SYSTEM_AND_TRADEREF_SQL);

      2135                 iaStmt = con.prepareStatement(SQLConstants.DELETE_TRADE_IA_BY_SYSTEM_AND_TRADEREF_SQL);

      2136

      2137                 miscStmt = con.prepareStatement(SQLConstants.DELETE_TRADE_MISC_BY_SYSTEM_AND_TRADEREF_SQL);

      2138                 ccpStmt = con.prepareStatement(SQLConstants.DELETE_TRADE_CCP_BY_SYSTEM_AND_TRADEREF_SQL);

      2139                 tradeStmt = con.prepareStatement(SQLConstants.DELETE_TRADE_BY_SYSTEM_AND_TRADEREF_SQL);

      2140            }

      2141            for (String ref : tradeRefList) {

      2142                if (isDateAffected) {// T-2 and T-3 agreements

      2143                    updateDeletedDateStmt.setDate(1, todaySqlDateInAgreementTimeZone);

      2144                    updateDeletedDateStmt.setString(2, ref);

      2145                    updateDeletedDateStmt.setLong(3, system);

      2146                    updateDeletedDateStmt.addBatch();

      2147                    deleteStmt.setString(1, ref);

      2148                    deleteStmt.setLong(2, system);

      2149                    deleteStmt.setDate(3, valuationDate);

      2150                    deleteStmt.addBatch();

      2151                } else {// normal agreement or T-1 agreement, delete

      2152                    calcStmt.setString(1, ref);

      2153                    calcStmt.setLong(2, system);

      2154                    calcStmt.addBatch();

      2155

      2156                    mtmStmt.setString(1, ref);

      2157                    mtmStmt.setLong(2, system);

      2158                    mtmStmt.addBatch();

      2159

      2160                    iaStmt.setString(1, ref);

      2161                    iaStmt.setLong(2, system);

      2162                    iaStmt.addBatch();

      2163

      2164                    miscStmt.setString(1, ref);

      2165                    miscStmt.setLong(2, system);

      2166                    miscStmt.addBatch();

      2167

      2168                    ccpStmt.setString(1, ref);

      2169                    ccpStmt.setLong(2, system);

      2170                    ccpStmt.addBatch();

      2171

      2172                    tradeStmt.setString(1, ref);

      2173                    tradeStmt.setLong(2, system);

      2174                    tradeStmt.addBatch();

      2175                }

      2176            }

      2177            if (isDateAffected) {

      2178                deleteStmt.executeBatch();

      2179                updateDeletedDateStmt.executeBatch();

      2180            } else {

      2181                calcStmt.executeBatch();                     /*********SQLException thrown from here

      2182                mtmStmt.executeBatch();

      2183                iaStmt.executeBatch();

      2184                miscStmt.executeBatch();

      2185                ccpStmt.executeBatch();

      2186                tradeStmt.executeBatch();

      2187            }

      2188        } catch (SQLException e) {

      2189            log.error(e.getMessage(), e);

      2190            throw new LRSPersistenceRuntimeException("error trying to delete related trades with systemId=" + system, null, null, e);  //****catched and rethrow RuntimeException here

      2291        } finally {

      2292            closeStatementWithoutException(calcStmt);

      2293            closeStatementWithoutException(mtmStmt);

      2294            closeStatementWithoutException(iaStmt);

      2295            closeStatementWithoutException(miscStmt);

      2296            closeStatementWithoutException(ccpStmt);

      2297            closeStatementWithoutException(tradeStmt);

      2298            closeStatementWithoutException(updateDeletedDateStmt);

      2299            closeStatementWithoutException(deleteStmt);

      2200            closeConnectionWithoutException(con);

      2201        }

      2202    }

      2203

      2204    /**

      2205     * only used for delta feed

      2206     * @ejb:interface-method view-type="local"

      2207     * @ejb:transaction type="RequiresNew"

      2208     */

      2209    public void removeTradeBySqlAndLockByAgreementId(final List<String> tradeRefList, final long system, final long agreementId,

      2210            final java.util.Date todayInAgreementTimeZone, final TRule tRule) throws Exception {

      2211           AgreementLockTemplate agreementLockTemplate = new AgreementLockTemplate(){

      2212                         @Override

      2213                       public void callBack() {

      2214                           TradePersistenceManagerLocal tradePm = (TradePersistenceManagerLocal)TradePersistenceManagerBean.this.sc.getEJBLocalObject();

      2215                            tradePm.removeTradesBySqlWithNewTransation(tradeRefList, system, agreementId, todayInAgreementTimeZone, tRule); //****this method' code is pasted above this one

      2216                            }

      2217                    };

      2218           try {

      2219                 ApplicationLockHelper tradeFeedLockHelper = STPUtils.getApplicationLockHelper(preferencesLocal);

      2220                 agreementLockTemplate.execute(agreementId, tradeFeedLockHelper);  //******will call the overriden callBack() method

      2221           } catch (LrsLockedException lle) {

      2222                 log.warn(lle);

      2223                 throw lle;

      2224           }catch (LrsCheckedException e) {

      2225                log.error(e);

      2226                throw e;

      2227           }catch(Exception e){

      2228                log.error(e);

      2229                throw new LRSRemoveException("Can not remove delta tradefeed  ", null,null,e);

      2230           }

      2231        }

       

             

          ....

      }

       

      /****log****/

      2013-06-17 13:22:03,555 ERROR [com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean] (http-0.0.0.0-8080-27:) ORA-02049: timeout: distributed transaction waiting for lock

       

       

      java.sql.BatchUpdateException: ORA-02049: timeout: distributed transaction waiting for lock

       

       

                at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:343)

                at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:10768)

                at oracle.jdbc.driver.T4CPreparedStatement.executeBatch(T4CPreparedStatement.java)

                at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:620)

                at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeBatch(WrappedPreparedStatement.java)

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean.removeTradesBySqlWithNewTransation(TradePersistenceManagerBean.java:2181)

                at sun.reflect.GeneratedMethodAccessor2080.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2771.removeTradesBySqlWithNewTransation(Unknown Source)

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean$10.callBack(TradePersistenceManagerBean.java:2215)

                at com.lombardrisk.collateral.trade.AgreementLockTemplate.execute(AgreementLockTemplate.java:59)

               at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean.removeTradeBySqlAndLockByAgreementId(TradePersistenceManagerBean.java:2220)

                at sun.reflect.GeneratedMethodAccessor2079.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2771.removeTradeBySqlAndLockByAgreementId(Unknown Source)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.deleteFromDB(ColTradeFeedServiceBean.java:889)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.restoreDataToDB(ColTradeFeedServiceBean.java:756)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.loadData(LRSDeltaImportHelper.java:62)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.loadData(LRSDeltaImportHelper.java:66)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.load(LRSDeltaImportHelper.java:37)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.deltaFeedImport(ColTradeFeedServiceBean.java:2279)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.importData(ColTradeFeedServiceBean.java:493)

                at sun.reflect.GeneratedMethodAccessor2057.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:404)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2917.importData(Unknown Source)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.importDeltaTradeSupportMultiSystem(ColTradeFeedServiceBean.java:2114)

                at sun.reflect.GeneratedMethodAccessor4933.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2917.importDeltaTradeSupportMultiSystem(Unknown Source)

                at com.lombardrisk.collinews.ejb3.serviceimpl.DeltaFeedWebServiceBean.importData(DeltaFeedWebServiceBean.java:76)

                at sun.reflect.GeneratedMethodAccessor4932.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)

                at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)

                at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:57)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)

                at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:94)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:70)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.security.RoleBasedAuthorizationInterceptor.invoke(RoleBasedAuthorizationInterceptor.java:166)

                at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptor.invoke(RoleBasedAuthorizationInterceptor.java:108)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)

                at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:139)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.wsf.container.jboss42.InvocationHandlerEJB3.invoke(InvocationHandlerEJB3.java:103)

                at org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:223)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:421)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:286)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:196)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:122)

                at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84)

                at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

                at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java)

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

                at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)

                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)

                at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)

                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)

                at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)

                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)

                at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)

                at com.lombardrisk.f3.IChainLoginValve.invoke(IChainLoginValve.java:21)

                at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:543)

                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)

                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)

                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)

                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

                at java.lang.Thread.run(Thread.java:662)

      2013-06-17 13:22:03,561 ERROR [org.jboss.ejb.plugins.LogInterceptor] (http-0.0.0.0-8080-27:) TransactionRolledbackLocalException in method: public abstract void com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerLocal.removeTradesBySqlWithNewTransation(java.util.List,long,long,java.util.Date,com.lombardrisk.collateral.CollateralConstants$TRule), causedBy:

      com.lombardrisk.f3.persistence.exception.LRSPersistenceRuntimeException: error trying to delete related trades with systemId=4315.

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean.removeTradesBySqlWithNewTransation(TradePersistenceManagerBean.java:2190)

                at sun.reflect.GeneratedMethodAccessor2080.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2771.removeTradesBySqlWithNewTransation(Unknown Source)

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean$10.callBack(TradePersistenceManagerBean.java:2215)

                at com.lombardrisk.collateral.trade.AgreementLockTemplate.execute(AgreementLockTemplate.java:59)

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean.removeTradeBySqlAndLockByAgreementId(TradePersistenceManagerBean.java:2220)

                at sun.reflect.GeneratedMethodAccessor2079.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2771.removeTradeBySqlAndLockByAgreementId(Unknown Source)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.deleteFromDB(ColTradeFeedServiceBean.java:889)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.restoreDataToDB(ColTradeFeedServiceBean.java:756)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.loadData(LRSDeltaImportHelper.java:62)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.loadData(LRSDeltaImportHelper.java:66)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.load(LRSDeltaImportHelper.java:37)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.deltaFeedImport(ColTradeFeedServiceBean.java:2279)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.importData(ColTradeFeedServiceBean.java:493)

                at sun.reflect.GeneratedMethodAccessor2057.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:404)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2917.importData(Unknown Source)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.importDeltaTradeSupportMultiSystem(ColTradeFeedServiceBean.java:2114)

                at sun.reflect.GeneratedMethodAccessor4933.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2917.importDeltaTradeSupportMultiSystem(Unknown Source)

                at com.lombardrisk.collinews.ejb3.serviceimpl.DeltaFeedWebServiceBean.importData(DeltaFeedWebServiceBean.java:76)

                at sun.reflect.GeneratedMethodAccessor4932.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)

                at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)

                at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:57)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)

                at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:94)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:70)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.security.RoleBasedAuthorizationInterceptor.invoke(RoleBasedAuthorizationInterceptor.java:166)

                at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptor.invoke(RoleBasedAuthorizationInterceptor.java:108)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)

                at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:139)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.wsf.container.jboss42.InvocationHandlerEJB3.invoke(InvocationHandlerEJB3.java:103)

                at org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:223)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:421)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:286)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:196)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:122)

                at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84)

                at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

                at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java)

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

                at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)

                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)

                at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)

                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)

                at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)

                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)

                at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)

                at com.lombardrisk.f3.IChainLoginValve.invoke(IChainLoginValve.java:21)

                at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:543)

                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)

                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)

                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)

                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

                at java.lang.Thread.run(Thread.java:662)

      2013-06-17 13:22:03,585 ERROR [com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean] (http-0.0.0.0-8080-27:) javax.ejb.TransactionRolledbackLocalException: error trying to delete related trades with systemId=4315.

      2013-06-17 13:22:03,614 ERROR [com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean] (http-0.0.0.0-8080-27:) Transaction is not active: tx=TransactionImple < ac, BasicAction: aa46b41:872d:51bdf68e:1df0d39 status: ActionStatus.ABORT_ONLY >; - nested throwable: (javax.resource.ResourceException: Transaction is not active: tx=TransactionImple < ac, BasicAction: aa46b41:872d:51bdf68e:1df0d39 status: ActionStatus.ABORT_ONLY >)

      org.jboss.util.NestedSQLException: Transaction is not active: tx=TransactionImple < ac, BasicAction: aa46b41:872d:51bdf68e:1df0d39 status: ActionStatus.ABORT_ONLY >; - nested throwable: (javax.resource.ResourceException: Transaction is not active: tx=TransactionImple < ac, BasicAction: aa46b41:872d:51bdf68e:1df0d39 status: ActionStatus.ABORT_ONLY >)

                at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:96)

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean.removeTradesBySqlWithNewTransation(TradePersistenceManagerBean.java:2123)

                at sun.reflect.GeneratedMethodAccessor2080.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2771.removeTradesBySqlWithNewTransation(Unknown Source)

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean$10.callBack(TradePersistenceManagerBean.java:2215)

                at com.lombardrisk.collateral.trade.AgreementLockTemplate.execute(AgreementLockTemplate.java:59)

                at com.lombardrisk.collateral.persistence.trade.TradePersistenceManagerBean.removeTradeBySqlAndLockByAgreementId(TradePersistenceManagerBean.java:2220)

                at sun.reflect.GeneratedMethodAccessor2079.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2771.removeTradeBySqlAndLockByAgreementId(Unknown Source)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.deleteFromDB(ColTradeFeedServiceBean.java:889)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.restoreDataToDB(ColTradeFeedServiceBean.java:756)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.loadData(LRSDeltaImportHelper.java:62)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.loadData(LRSDeltaImportHelper.java:66)

                at com.lombardrisk.f3.etl.LRSDeltaImportHelper.load(LRSDeltaImportHelper.java:37)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.deltaFeedImport(ColTradeFeedServiceBean.java:2279)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.importData(ColTradeFeedServiceBean.java:493)

                at sun.reflect.GeneratedMethodAccessor2057.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:404)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2917.importData(Unknown Source)

                at com.lombardrisk.collateral.ColTradeFeedServiceBean.importDeltaTradeSupportMultiSystem(ColTradeFeedServiceBean.java:2114)

                at sun.reflect.GeneratedMethodAccessor4933.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.invocation.Invocation.performCall(Invocation.java:359)

                at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237)

                at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)

                at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

                at com.lombardrisk.f3.audit.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:232)

                at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)

                at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)

                at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)

                at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)

                at com.lombardrisk.f3.accesscontrol.JBossEJBInterceptor.invoke(JBossEJBInterceptor.java:139)

                at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)

                at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)

                at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)

                at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)

                at org.jboss.ejb.Container.invoke(Container.java:960)

                at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)

                at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)

                at $Proxy2917.importDeltaTradeSupportMultiSystem(Unknown Source)

                at com.lombardrisk.collinews.ejb3.serviceimpl.DeltaFeedWebServiceBean.importData(DeltaFeedWebServiceBean.java:76)

                at sun.reflect.GeneratedMethodAccessor4932.invoke(Unknown Source)

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

                at java.lang.reflect.Method.invoke(Method.java:597)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)

                at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)

                at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:57)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)

                at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:94)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:70)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.security.RoleBasedAuthorizationInterceptor.invoke(RoleBasedAuthorizationInterceptor.java:166)

                at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptor.invoke(RoleBasedAuthorizationInterceptor.java:108)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)

                at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:139)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)

                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)

                at org.jboss.wsf.container.jboss42.InvocationHandlerEJB3.invoke(InvocationHandlerEJB3.java:103)

                at org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:223)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:421)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:286)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:196)

                at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:122)

                at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84)

                at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

                at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java)

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

                at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)

                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)

                at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)

                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)

                at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)

                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)

                at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)

                at com.lombardrisk.f3.IChainLoginValve.invoke(IChainLoginValve.java:21)

                at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:543)

                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)

                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)

                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)

                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

                at java.lang.Thread.run(Thread.java:662)

      Caused by: javax.resource.ResourceException: Transaction is not active: tx=TransactionImple < ac, BasicAction: aa46b41:872d:51bdf68e:1df0d39 status: ActionStatus.ABORT_ONLY >

                at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:319)

                at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:403)

                at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:850)

                at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:90)

                ... 157 more

        • 1. Re: About EJB 2.1 Transaction Rollback
          wdfink

          I did not understand your explanation and the code.

           

          It might be helpful if you add the code with line numbers and comment the flow between the code lines.

          • 2. Re: About EJB 2.1 Transaction Rollback
            bondchan921

            Thanks Wolf-Dieter Fink,

             

             

            line numbers and comments have been added to the code.

            • 3. Re: About EJB 2.1 Transaction Rollback
              wdfink

              I only see two reasons for the moment.

              - the finally block with the close.... call something inside the close method

              - there is something outside the code calling the method again

               

              You should use a debugger or add more debug statements to see whether the method is invoked after returning

              • 4. Re: About EJB 2.1 Transaction Rollback
                bondchan921

                Thanks for you reply,

                 

                It's happening in the Client Producation, I can reproduce in our test box,

                  -Action from long exception log, this removeTradesBySqlWithNewTransation() were called several times after the RuntimeException.

                  -Is there any known bug(Jboss/JRE ...) causing a method execute several times in some condition ?

                • 5. Re: About EJB 2.1 Transaction Rollback
                  wdfink

                  Im not aware of such bug that calls a method several times.

                  From the tags I suppose you are using a JBoss AS4.x and therefore an older Java, right?

                   

                  From my experience such behaviour can have two reasons

                  - wrong Exception handling in the business code

                  - you have an interceptor which call the bean in case of an Exception

                   

                  In both cases add more log or better use a debugger to analyse.

                  • 6. Re: About EJB 2.1 Transaction Rollback
                    bondchan921

                    Thanks for your reply

                     

                    1)Yeah, Client is using Jboss 4.3.0.GA_CP07 & jdk 6u19,

                    2)I do have 2 interceptors com.lombardrisk.f3.*,  I can't see any possible of calling a bean's method in them.

                    3)Since I can't reproduce in my test box, so adding more logs is a good choice.