Websphere调度程序
Websphere调度程序正在使用调度程序数据源XA驱动程序。当调度程序执行任务时,它正在启动一个全局事务,但在我们的应用程序中,我们正在创建一个到另一个数据库的新连接,并显式提交数据并关闭连接。此数据源是使用非XA驱动程序数据源配置的。对于应用程序,我们还启用了接受启发式危险(最后一个参与者支持扩展)。 现在,在运行scheudler时,我们得到了异常DSRA9350E:Operation Connection.commit在全局事务期间是不允许的Websphere调度程序,websphere,scheduler,Websphere,Scheduler,Websphere调度程序正在使用调度程序数据源XA驱动程序。当调度程序执行任务时,它正在启动一个全局事务,但在我们的应用程序中,我们正在创建一个到另一个数据库的新连接,并显式提交数据并关闭连接。此数据源是使用非XA驱动程序数据源配置的。对于应用程序,我们还启用了接受启发式危险(最后一个参与者支持扩展)。 现在,在运行scheudler时,我们得到了异常DSRA9350E:Operation Connection.commit在全局事务期间是不允许的 您的任务在事务中运行,您可能在该事务中调用c
您的任务在事务中运行,您可能在该事务中调用commit。因此,您应该调用数据库操作,提交并关闭该事务外部的数据库。 创建bean管理的事务会话bean
@TransactionManagement(TransactionManagementType.BEAN)
并将数据库和与事务相关的代码移动到新bean中。您的任务在事务中运行,并且可能在该事务中调用commit。因此,您应该调用数据库操作,提交并关闭该事务外部的数据库。 创建bean管理的事务会话bean
@TransactionManagement(TransactionManagementType.BEAN)
并将数据库和事务相关代码移动到新bean中。为什么要显式提交其他资源?它正在由调度程序启动的tran中登记;它将在tran提交时自动提交。为什么要显式提交其他资源?它正在由调度程序启动的tran中登记;当tran提交时,它将自动提交。