使用weblogic的JTA事务无法按预期工作

时间:2012-05-16 02:03:32

标签: java java-ee weblogic jta

我的应用程序锁定了数据库表,因为JTA没有使用rollback或commit命令完成您的操作。

应用程序在具有两个托管服务器的群集中的weblogic 10.3上运行。

对数据库进行访问的方法是同步的,其中方法内部的第一部分执行查询,第二部分调用另一个方法来执行合并。此方法具有注释@Transaction(只读= false)。

JTA交易由weblogic执行。

我的问题是,基于所描述的场景,什么可能在数据库中生成锁?

1 个答案:

答案 0 :(得分:0)

在我看来一个线程问题,锁定没有获得。

  

对数据库进行访问的方法在第一部分同步   在方法内部执行查询而第二个调用另一个查询   执行合并的方法。

检查两个方法是否需要两个不同的锁,如果是,则可能导致死锁,如果方法1中的线程一直等待锁访问方法2.