当我尝试在容器管理持久性的无状态bean中执行存储过程时,我收到以下错误;
com.ibm.db2.jcc.am.SqlException: DB2 SQL Error: SQLCODE=-751, SQLSTATE=38003, SQLERRMC=STORED PROCEDURE;FXTR324;FXTR324;COMMIT, DRIVER=4.7.85
如果我手动创建数据库连接,即非托管事务,则存储过程执行时没有错误。
在EJB bean中执行它需要做些什么吗?
答案 0 :(得分:2)
尝试将调用存储过程的方法的事务属性设置为NotSupported。这样,您将确保在没有活动事务上下文的情况下执行您的方法(活动的上下文将暂停),因此您的存储过程(可能是提交/回滚逻辑)将成功执行。
有关详细信息,请查看this article。