Wildfly 8.2.0中的UserTransaction

时间:2016-08-17 14:11:02

标签: wildfly wildfly-8 jpa-2.1 seam2

之前我使用了seam 2.1和JPA 1以及JBOSS 5.在这个配置中,我使用下面的代码访问用户事务:

 UserTransaction userTx = Transaction.instance();
            if (userTx != null) {
                boolean previousTransaction = Transaction.instance().isActive();
                if (!previousTransaction) {
                    Transaction.instance().begin();
                }

                userTx.setTransactionTimeout(10 * 60);
                entityManager().joinTransaction();
                entityManager().persist(pur);
                entityManager().flush();
                userTx.commit();

                if (previousTransaction) {
                    userTx.begin();
                }
            }
        }

之后我和wildfly 8.2.0一起迁移到了seam 2.3和jpa 2。我无法使用上面的代码访问用户事务,所以任何人都可以指导我如何在wildfly 8.2.0中访问用户事务。?

我主要寻找的是当我使用entitymanagaer进行刷新时立即保留我的更改的方法,它不应该等待方法退出。

请指导我。

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码获取UserTransaction。

UserTransaction ut = EJBClient.getUserTransaction("node1");

在上面的代码中,node1是您必须设置为WildFly的VM参数。请添加以下VM参数。

-Djboss.node.name =节点1

这可以解决您的问题。