我使用JBoss 4.0.4 GA作为应用服务器和EJB 2.x的编码逻辑和MySQL 5.1中作为后端。我最近改变了提交选项在JBoss中配置“B”,因为我们推出了一些JDBC与EJB一起查询。我的EJB代码inturn调用MySql中的存储过程,并使用CallableStatement执行存储过程。我在MySQL中使用Innodb引擎作为表,而jboss数据源是使用最简单的配置。但是,当我通过客户端执行的EJB方法,我得到以下异常:JBoss的事务回滚使用JDBC
产生的原因:org.jboss.resource.connectionmanager.JBossLocalXAException: 不能犯本地TX; - 嵌套抛出: (org.jboss.resource.JBossResourceException:的SQLException; - 嵌套 抛出:(值java.sql.SQLException:没有允许后 连接关闭操作)。)在 org.jboss.resource.connectionmanager.TxConnectionManager $ LocalXAResource.commit(TxConnectionManager.java:912) 在 org.jboss.tm.TransactionImpl $ Resource.commit(TransactionImpl.java:2253) 在 org.jboss.tm.TransactionImpl.commitResources(TransactionImpl.java:1784) 在org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:340)... 29多个
引起:org.jboss.resource.JBossResourceExce ption:SQLException; - 嵌套抛出:(值java.sql.SQLException:无操作后允许连接 关闭。)在 org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.checkException(BaseWrapperManagedConnection.java:636) 在 org.jboss。 resource.adapter.jdbc.local.LocalManagedConnection.commit(LocalManagedConnection.java:73) 在 org.jboss.resource.connectionmanager.TxConnectionManager $ LocalXAResource.commit(TxConnectionManager.java:905) ...... 32多个
导致:java.sql.SQLException: 连接关闭后,不允许任何操作。 at com.mysql.jdbc.Connection.checkClosed(Connection.java:1842)at com.mysql.jdbc.Connection.commit(Connection.java:2154)at org.jboss.resource.adapter.jdbc.local。 LocalManagedConnection.commit(LocalManagedConnection.java:69) ... 33更多