Hi,
I am using Hibernate, JPA, Weblogic and EJB 2.0 with Weblogic CMP. I am getting the following exception and it never success until the computer is restarted......any thought will be highly appreciated.....
javax.persistence.PersistenceException: org.hibernate.SessionException: Session is closed! at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:614) at org.hibernate.ejb.AbstractEntityManagerImpl.flush(AbstractEntityManagerImpl.java:307) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at weblogic.deployment.BasePersistenceContextProxyImpl.invoke(BasePersistenceContextProxyImpl.java:90) at weblogic.deployment.TransactionalEntityManagerProxyImpl.invoke(TransactionalEntityManagerProxyImpl.java:89) at weblogic.deployment.BasePersistenceContextProxyImpl.invoke(BasePersistenceContextProxyImpl.java:80) at weblogic.deployment.TransactionalEntityManagerProxyImpl.invoke(TransactionalEntityManagerProxyImpl.java:24) at $Proxy58.flush(Unknown Source) at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589) at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230) at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363) at weblogic.security.service.SecurityManager.runAs(Unknown Source) at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473) at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) at weblogic.work.ExecuteThread.run(ExecuteThread.java:173) Caused by: org.hibernate.SessionException: Session is closed! at org.hibernate.impl.AbstractSessionImpl.errorIfClosed(AbstractSessionImpl.java:72) at org.hibernate.impl.SessionImpl.getJDBCContext(SessionImpl.java:1891) at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:328) at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50) at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1027) at org.hibernate.ejb.AbstractEntityManagerImpl.flush(AbstractEntityManagerImpl.java:304) ... 22 more
Details on this: from hibernate.log
DEBUG 2009-12-04 10:39:02.844 GMT-0600 org.hibernate.jdbc.ConnectionManager [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] - aggressively releasing JDBC connection DEBUG 2009-12-04 10:39:02.844 GMT-0600 org.hibernate.jdbc.ConnectionManager [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] - releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)] DEBUG 2009-12-04 10:39:02.844 GMT-0600 org.hibernate.ejb.AbstractEntityManagerImpl [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] - mark transaction for rollback DEBUG 2009-12-04 10:40:57.969 GMT-0600 org.hibernate.impl.SessionImpl [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - opened session at timestamp: 12599448579 DEBUG 2009-12-04 10:40:57.969 GMT-0600 org.hibernate.ejb.AbstractEntityManagerImpl [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - Looking for a JTA transaction to join DEBUG 2009-12-04 10:40:57.969 GMT-0600 org.hibernate.jdbc.JDBCContext [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - successfully registered Synchronization DEBUG 2009-12-04 10:40:57.969 GMT-0600 org.hibernate.loader.Loader [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - loading entity: DEBUG 2009-12-04 10:40:57.969 GMT-0600 org.hibernate.jdbc.AbstractBatcher [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - about to open PreparedStatement (open PreparedStatements: 0, globally: 0) DEBUG 2009-12-04 10:40:57.969 GMT-0600 org.hibernate.jdbc.ConnectionManager [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - opening JDBC connection DEBUG 2009-12-04 10:40:57.984 GMT-0600 org.hibernate.loader.Loader [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - done entity load DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.event.def.AbstractFlushingEventListener [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - processing flush-time cascades DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.event.def.AbstractFlushingEventListener [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - dirty checking collections DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.event.def.AbstractFlushingEventListener [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - Flushed: 0 insertions, 1 updates, 0 deletions to 1 objects DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.event.def.AbstractFlushingEventListener [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - Flushed: 0 (re)creations, 0 updates, 0 removals to 0 collections DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.pretty.Printer [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - listing entities: DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.pretty.Printer [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.jdbc.AbstractBatcher [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - about to open PreparedStatement (open PreparedStatements: 0, globally: 0) DEBUG 2009-12-04 10:41:12.984 GMT-0600 org.hibernate.jdbc.ConnectionManager [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - opening JDBC connection DEBUG 2009-12-04 10:41:49.906 GMT-0600 org.hibernate.jdbc.AbstractBatcher [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - about to close PreparedStatement (open PreparedStatements: 1, globally: 1) DEBUG 2009-12-04 10:41:49.906 GMT-0600 org.hibernate.jdbc.ConnectionManager [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - skipping aggressive-release due to flush cycle DEBUG 2009-12-04 10:41:49.906 GMT-0600 org.hibernate.util.JDBCExceptionReporter [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] - could not update: java.sql.SQLException: The transaction is no longer active - status: 'Rolling Back. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 41 seconds BEA1-00143F0393EB410A5FA2]'. No further JDBC access is allowed within this transaction. at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:178) at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:188) at weblogic.jdbc.wrapper.Connection.preInvocationHandler(Connection.java:92) at weblogic.jdbc.wrapper.Connection.clearCachedStatement(Connection.java:814) at weblogic.jdbc.wrapper.PreparedStatement.clearCachedStatement(PreparedStatement.java:1357) at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStatement.java:161) at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2435) at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2335) at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2635) at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:115) at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:263) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168) at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321) at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50) at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1027) at org.hibernate.ejb.AbstractEntityManagerImpl.flush(AbstractEntityManagerImpl.java:304) at sun.reflect.GeneratedMethodAccessor115.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at weblogic.deployment.BasePersistenceContextProxyImpl.invoke(BasePersistenceContextProxyImpl.java:90) at weblogic.deployment.TransactionalEntityManagerProxyImpl.invoke(TransactionalEntityManagerProxyImpl.java:89) at weblogic.deployment.BasePersistenceContextProxyImpl.invoke(BasePersistenceContextProxyImpl.java:80) at weblogic.deployment.TransactionalEntityManagerProxyImpl.invoke(TransactionalEntityManagerProxyImpl.java:24) at $Proxy58.flush(Unknown Source)
...
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589) at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230) at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363) at weblogic.security.service.SecurityManager.runAs(Unknown Source) at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473) at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
|