gpt4 book ai didi

java - JBAS014360 : EJB 3. 1 FR 4.3.14.1 org.jboss.inspiration.InterceptorContext 上的并发访问超时

转载 作者:太空宇宙 更新时间:2023-11-04 12:42:19 26 4
gpt4 key购买 nike

我正在迁移到 JBoss AS 7.1 和 Seam 2.3,但在 JBAS014360: EJB 3.1 FR 4.3.14.1 org.jboss.invocable.InterceptorContext 上并发访问超时上遇到一些问题

这是我的 Action 类:

@Name("myAction")
@Scope(ScopeType.CONVERSATION)
public class MyAction implements java.io.Serializable {
@In(create = true)
private MyService myService;

@In(required = false)
@Out(required = true)
private User user;

@In(required = false)
@Out(required = false)
private Acquisition acquisition;

@Begin(join = true)
@Create
public void init() {
// more code
acquisition = myService.getNext(user);
}

public void saveHistory() {
myService.saveHistory(acquisition, user);
}
}

和服务类。

@Stateless
@Name("myService")
public class MyServiceImpl implements MyService {
@In(create = true)
private EntityManager em;

@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public Acquisition getNext(User user){
// em.createNamedQuery(...);
// acquisition.update(user);
// em.flush();
// return acquisition
}

@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public Acquisition saveHistory(Acquisition acquisition,User user){
history = createHistoryObject(...);
acquisition.getHistories().add(history);
return acquisition;
}
}

getNext(User user) 方法是从 init() block 调用的,它会导致异常。

saveHistory(...) 方法从 xhtml 页面调用并按预期工作。

init() block 有什么问题? EJB 3.1 或 Seam 2.3 中有一些变化吗?

有人能解释一下吗?

最佳答案

我找到了一种可行的方法。

如果我只是把

@In(create = true)
private EntityManager em;

MyAction.class 中,没有其他内容,那么一切正常。

仍在寻找此行为的解释。

有什么想法吗?

关于java - JBAS014360 : EJB 3. 1 FR 4.3.14.1 org.jboss.inspiration.InterceptorContext 上的并发访问超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36713039/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com