0

我正在使用 Glassfish 3.1.2.2。我有一个应用程序,它有一个在类级别上设置了 TransactionManagementType.BEAN 的 EJB(称为 MyBean)。在一个业务方法中,我从数据源获取连接,在连接上将自动提交设置为 false,对数据库表执行 INSERT/DELETE/UPDATE,然后在最后提交。然后我在单独的类中实现了一个 Web 服务(称为 MyWebService),它使用 MyBean 调用业务方法。客户端应用程序是一个单独的 Java 应用程序,它具有使用 MyWebService 的 WSDL 生成的 Web 服务客户端。客户端已将超时设置为 10 秒。如果对 MyWebService 的调用超过 10 秒,则客户端会收到超时异常。这一切都OK。我遇到的问题是,在 Glassfish 日志中,我看到 MyBean 完成了所有工作并且还提交了更改,但我没有在数据库中看到数据。这真让我抓狂!有谁知道发生了什么?

4

1 回答 1

0

好吧,我发现 Web 服务、Java EE 甚至 GlassFish 都不是罪魁祸首。有罪的一方是客户端,它也会对数据库进行一些更新。客户负责覆盖预期结果。

于 2013-05-31T13:09:56.120 回答