我正在使用以下版本的Websphere Liberty Profile,>
Windows
WebSphere Application Server 19.0.0.6 (1.0.29.cl190620190617-1530) on Java HotSpot(TM) 64-Bit Server VM, version 1.8.0_211-b12 (en_US)
Linux
WebSphere Application Server 19.0.0.6 (1.0.29.cl190620190617-1530) on IBM J9 VM, version 8.0.5.35 - pwa6480sr5fp35-20190418_01(SR5 FP35) (en_US)
[当我运行涉及线程的服务时,我在linux中收到以下错误,而在Windows中却未收到该错误,
java.lang.IllegalStateException: Cannot start a new UOW. A LocalTransactionContainment is already active with work.
at com.ibm.tx.ltc.impl.LTCUOWCallback.uowPreBegin(LTCUOWCallback.java:128) ~[?:?]
at com.ibm.tx.ltc.embeddable.impl.EmbeddableLTCUOWCallback.uowPreBegin(EmbeddableLTCUOWCallback.java:110) ~[?:?]
at com.ibm.tx.ltc.embeddable.impl.EmbeddableLTCUOWCallback.contextChange(EmbeddableLTCUOWCallback.java:66) ~[?:?]
at com.ibm.ws.transaction.services.LTCUOWCallbackService.contextChange(LTCUOWCallbackService.java:44) ~[?:?]
at com.ibm.ws.uow.UOWScopeCallbackManager.notifyCallbacks(UOWScopeCallbackManager.java:66) ~[?:?]
at com.ibm.tx.jta.impl.UserTransactionImpl.begin(UserTransactionImpl.java:65) ~[?:?]
at com.ibm.tx.jta.embeddable.impl.EmbeddableUserTransactionImpl.begin(EmbeddableUserTransactionImpl.java:69) ~[?:?]
at com.ibm.ws.transaction.services.UserTransactionService.begin(UserTransactionService.java:65) ~[?:?]
at com.ibm.ejs.container.UserTransactionWrapper.begin(UserTransactionWrapper.java:111) ~[com.ibm.ws.ejbcontainer_1.0.29.jar:?]
我正在Java HotSpot(TM)64位服务器VM版本1.8.0_211 -...上的Windows WebSphere Application Server 19.0.0.6(1.0.29.cl190620190617617-1530)中使用以下版本的Websphere Liberty Profile。
[IllegalStateException建议在之前在线程上执行事务性工作(例如数据库操作),而当UserTransaction.begin操作尝试启动新事务时,该工作尚未提交或回滚。请检查到目前为止的应用程序代码,如果可能,请将其发布到您的问题中。如果在两种情况下都运行相同的代码,则没有理由在平台之间的行为应该有所不同。