就像其他地方建议的那样,Bitronix看起来效果很好。但是,我对此感到困惑。当我调用TransactionManager.begin()后尝试保存会话时,我从Hibernate中获得了此异常:

14:21:32,350 ERROR [JTATransaction] Could not find UserTransaction in JNDI
javax.naming.NameNotFoundException: Name UserTransaction is not bound in this Context
    at org.apache.naming.NamingContext.lookup(NamingContext.java:769)


我看不到任何证据表明Bitronix将用户事务绑定到JNDI。我如何做到这一点?

最佳答案

在这里回答:https://github.com/bitronix/btm/blob/master/btm-docs/src/main/asciidoc/Hibernate2x.adoc#txManager

简而言之,除非您自己更改Tomcat配置,否则BTM无法自动将其自身绑定到Tomcat的JNDI服务器。此处说明:https://github.com/bitronix/btm/blob/master/btm-docs/src/main/asciidoc/TomcatWithBtm2x.adoc

09-13 02:08