[Persistence, JBoss/CMP, Hibernate, Database] - Connection from Pool Connection deosn't close
by j2eebank
Hi,
My application uses JBOSS connection pooling, using oracle.jdbc.driver.OracleDriver, ( ojdbc14.jar). I use callable statements and close the connection after use. But it looks connection doesn't get closed immediately but it will be available in the pool. When i execute same callable statement for a different record , I get some invalid data, that has come as a part of my previous call. It looks Oracle doesn't close the callable statement context unless the corresponding connection get closed fully from JAVA. In the case of pooling, active connection from pool might be connected to an active context in Oracle and any subsequent calls brings invalid data. When I use JDBC, things work fine. Is there anyway to resolve this. Pls help
Jik
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4150232#4150232
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4150232
18 years, 1 month
[Messaging, JMS & JBossMQ] - Message driven bean and transaction
by zahra2towin
Hi
I have an interseptor on ejb method, when an exception occured in EJB method this interceptor catch the exception and send the exception to a message driven bean to log it in data base,
the problem occured when the database exception or application exception that mark to rullback the transaction occured, in this case execution of
"connection.createQueueSession(true, Session.AUTO_ACKNOWLEDGE)"
raise "transaction is not active" Exception,
this is the stack trase of exception
| 08:14:14,531 ERROR [JmsSessionFactoryImpl] could not create session
| javax.resource.ResourceException: Transaction is not active: tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=Mohammadi/1096, BranchQual=, localId=1096]
| at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:290)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842)
| at org.jboss.resource.adapter.jms.JmsSessionFactoryImpl.allocateConnection(JmsSessionFactoryImpl.java:389)
| at org.jboss.resource.adapter.jms.JmsSessionFactoryImpl.createQueueSession(JmsSessionFactoryImpl.java:144)
| at com.gpayments.activepayment.core.exception.ExceptionHandlerService.log(ExceptionHandlerService.java:40)
| at com.gpayments.activepayment.core.exception.ExceptionHandlerService.log(ExceptionHandlerService.java:32)
| at com.gpayments.activepayment.interceptor.ExceptionInterceptor.handler(ExceptionInterceptor.java:48)
| at sun.reflect.GeneratedMethodAccessor115.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
| at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
| 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:46)
| 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:76)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
| 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:102)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
| 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.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:263)
| at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
| at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
| at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:828)
| at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:681)
| at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:358)
| at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:412)
| at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:239)
|
even when I set the transactionAttribute to "REQUIRES_NEW" the exception is raised.
thanks a lot
[list=]
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4150228#4150228
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4150228
18 years, 1 month