Websphere Scheduler正在使用调度程序数据源XA驱动程序。当任务由调度器执行时,它启动了一个全局事务,但在我们的应用程序中,我们创建了一个到另一个数据库的新连接,并显式地提交数据并关闭连接。此数据源使用非XA驱动程序数据源配置。对于应用程序,我们还启用了接受启发式危险(Last participant support extension)。现在,在运行调度程序时,我们得到了异常DSRA9350E:在全局事务期间不允许操作Connection.commit。
在这件事上有人能帮我吗?
发布于 2010-04-23 20:10:37
您的任务在事务中运行,您可能会在该事务中调用commit。因此您应该调用数据库操作,在事务外部提交和关闭数据库。创建bean管理的事务会话bean
@TransactionManagement(TransactionManagementType.BEAN)并将db和事务相关代码移动到新的bean中。
https://stackoverflow.com/questions/2552493
复制相似问题