WebLogic Server 版本: 10.3.0.0
异常描述:weblogic.transaction.TimedOutException: Transaction timed out after 30 seconds
[itlife365.com][2012-06-11 14:09:40,287][ERROR][com.primeton.das.entity.impl.hibernate.util.JDBCExceptionReporter] The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
BEA1-2826A1821BB6396E1D08]'. No further JDBC access is allowed within this transaction.
14:09:40,357 ERROR [apply] 人员导入失败,原因:ErrCode: 24000041
有可能不会直接报这个错误,但是会提示Caused by: weblogic.transaction.TimedOutException:
解决方法:
登陆AdminConsole
Environments --> <DomainName> (ClickHere) ---> Configuration (Tab) ---> JTA (SubTab) ----> in this page try to set the Transcation timeout
超时秒数: 指定在两阶段提交事务处理中允许活动事务处理处于第一阶段的最长时间 (秒)。如果指定的时间到期, 则将自动回退该事务处理。默认的是30秒
By default the value is 30 Seconds at the Domain level, however your transaction might need more time, hence increasing this value would surely solve your issue.
将该值设大一点,我设成了600秒,一般不会超过这么多了,超过的话说明代码需要优化。
设置完保存成功后不需要重启就会生效。