Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
登录时:java.sql.SQLException:事务不再处于活动状态-状态:';标记回滚_Java_Hibernate_Jsp_Spring Mvc_Jms - Fatal编程技术网

登录时:java.sql.SQLException:事务不再处于活动状态-状态:';标记回滚

登录时:java.sql.SQLException:事务不再处于活动状态-状态:';标记回滚,java,hibernate,jsp,spring-mvc,jms,Java,Hibernate,Jsp,Spring Mvc,Jms,我们的应用程序在web logic 10上运行。应用程序开发使用java,spring框架,hibernae,jsp 尝试登录tomcat时没有错误,但部署到weblogic server时,无论我们如何登录或尝试侦听来自MQ的消息,都会出现相同的异常,这是通过打开跟踪发现的 是什么导致了这个问题。任何建议都非常有用!提前谢谢 堆栈跟踪: java.sql.SQLException: The transaction is no longer active - status: 'Marked ro

我们的应用程序在web logic 10上运行。应用程序开发使用java,spring框架,hibernae,jsp

尝试登录tomcat时没有错误,但部署到weblogic server时,无论我们如何登录或尝试侦听来自MQ的消息,都会出现相同的异常,这是通过打开跟踪发现的

是什么导致了这个问题。任何建议都非常有用!提前谢谢

堆栈跟踪:

java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException: setRollbackOnly called on transaction]'. 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:93)
   at weblogic.jdbc.wrapper.Connection.prepareStatement(Connection.java:480)
   at weblogic.jdbc.wrapper.JTSConnection.prepareStatement(JTSConnection.java:486)
   at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:534)
   at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:116)
   at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:109)
   at org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(AbstractBatcher.java:244)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2412)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2875)
   at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:79)
   at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:185)
   at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
   at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
   at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
   at org.springframework.orm.hibernate3.SpringSessionSynchronization.beforeCommit(SpringSessionSynchronization.java:145)
   at org.springframework.transaction.support.TransactionSynchronizationUtils.triggerBeforeCommit(TransactionSynchronizationUtils.java:95)
   at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCommit(AbstractPlatformTransactionManager.java:925)
   at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:738)
   at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:725)
   at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:475)
   at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:270)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:631)
   at pkg.add.send.msg.InterceptMessageListener$$EnhancerByCGLIB$$f327e73b.onMessage(<generated>)
   at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:563)
   at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:500)
   at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:468)
   at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)
   at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)
   at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1104)
   ... 3 more
java.sql.SQLException:事务不再处于活动状态-状态:'已标记回滚。[Reason=weblogic.transaction.internal.AppSetRollbackOnlyException:setRollbackOnly在事务上调用]”。此事务中不允许进一步的JDBC访问。
位于weblogic.jdbc.wrapper.JTSConnection.checkifrolled(JTSConnection.java:178)
位于weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:188)
在weblogic.jdbc.wrapper.Connection.preInvocationHandler(Connection.java:93)中
在weblogic.jdbc.wrapper.Connection.prepareStatement(Connection.java:480)中
位于weblogic.jdbc.wrapper.JTSConnection.prepareStatement(JTSConnection.java:486)
位于org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:534)
位于org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:116)
位于org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:109)
位于org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(AbstractBatcher.java:244)
位于org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2412)
位于org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2875)
位于org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:79)
位于org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)
位于org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)
位于org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:185)
位于org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
位于org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
位于org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
在org.springframework.orm.hibernate3.SpringSessionSynchronization.beforecomit(SpringSessionSynchronization.java:145)上
位于org.springframework.transaction.support.TransactionSynchronizationUtils.triggerBeforeCommit(TransactionSynchronizationUtils.java:95)
位于org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCommit(AbstractPlatformTransactionManager.java:925)
位于org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:738)
位于org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:725)
位于org.springframework.transaction.interceptor.TransactionSpectSupport.commitTransactionAfterReturning(TransactionSpectSupport.java:475)
位于org.springframework.transaction.interceptor.TransactionSpectSupport.invokeWithinTransaction(TransactionSpectSupport.java:270)
位于org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
位于org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:172)
位于org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:631)
在pkg.add.send.msg.InterceptMessageListener$$enhancerbyglib$$f327e73b.onMessage()处
位于org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:563)
位于org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:500)
位于org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:468)
位于org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)
位于org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)
位于org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1104)
... 3个以上

我假设:发生了异常。此异常已在方法中的某个位置被捕获/处理,但它导致事务标记为回滚。使用Spring,您可以使用@Transactional(rollboor=XYZ.class)或@Transactional(norollboor=XYZ.class)之类的工具。您是如何配置事务管理器的(在weblogic和tomcat上)?您在启动时是否仔细阅读了日志,特别是关于事务管理器设置的日志?@ben75使用不同的应用程序进行相同的配置可以。但是,我会再次调查的@ben75的配置没有问题,只是检查了一下,并与其他应用进行了比较