在JBoss中7,我有以下的配置值java.sql.SQLException:有管理的交易過程中不能犯
<datasource jndi-name="java:jboss/env/esilicon/vms/OracleDBPoolNonXA" pool-name="ExampleDS">
<connection-url>jdbc:oracle:thin:@erptstdb.sc.kaka.com:14100:ERPTST</connection-url>
<driver>XAOracleJDBCDriver</driver>
<pool>
<min-pool-size>10</min-pool-size>
<max-pool-size>20</max-pool-size>
<prefill>true</prefill>
</pool>
<security>
<user-name>apps</user-name>
<password>apps</password>
</security>
</datasource>
<drivers>
<driver name="XAOracleJDBCDriver" module="oracle.jdbc">
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
</driver>
</drivers>
在orther類,我有方法來獲取數據源的連接
public static Connection getNonXAConnection() {
try {
InitialContext context = new InitialContext();
DataSource dataSource = (DataSource)context.lookup(JNDILookup.PURE_CONNECTION_JNDI);
return dataSource.getConnection();
} catch (Exception e) {
e.printStackTrace();
logger.fatal(e.getMessage(), e.getCause());
}
return null;
}
當我犯這個連接
java.sql.SQLException: You cannot commit during a managed transaction!
at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.jdbcCommit(BaseWrapperManagedConnection.java:981)
at org.jboss.jca.adapters.jdbc.WrappedConnection.commit(WrappedConnection.java:757)
我只是想獲取連接,並執行一些存儲發生錯誤過程,並finnaly提交此連接。請幫助我