我已经开发了Java应用程序,并且正在使用wlp18服务器。在此之前,我已经使用Jboss运行了我的应用程序。在Jboss中,我使用@TransactionTimeout批注在EJB中设置方法级别的事务超时。当我迁移到WebSphere Liberty时,无法找到方法级别的事务超时。代替使用.xml configure来设置类级别的事务超时,如下所示,
<session name="class-name">
<global-transaction transaction-time-out="1000">
<session>
有什么方法可以在方法级别设置事务超时,或者为什么不能在WebSphere Liberty中设置方法级别事务。
答案 0 :(得分:1)
如果您有权访问UserTransaction
对象,则可以使用以下方法设置事务超时:
@Resource
UserTransaction tx;
public void doSomething() {
tx.setTransactionTimeout(123);
tx.begin();
// ...
}