我们的应用程序是一个广泛使用 Guice-Persist 和 Guice-Servlet 的 Java-GWT 应用程序。我们使用 Guice-Persist 的 session-per-HTTPRequest 功能从未遇到过问题,这与 Warp-persist 最初使用的功能相似。
根据文档,我们正在通过 PersistFilter 类过滤我们的 webapp。根据此处的 Guice 文档,我们的 persistence.xml 文件具有 transaction-type="RESOURCE_LOCAL" 。
现在由于某种奇怪的原因,我们的 PROD 环境显示错误
“这个线程上的工作已经开始。看起来你已经调用了 UnitOfWork.begin() 两次,而在两者之间没有对 end() 进行平衡调用。”
看起来 Guice-Persist 不支持嵌套工作单元的问题。关联
我们最近还从休眠 3.6.3.Final 迁移到了 4.1.4.Final。不确定他是否会与guice有某种不兼容...
在这一点上,我们完全不知道为什么会发生这种情况。