[英]JSF ClassNotFoundException in EJB module on JBoss EAP 6.1
[英]By using ejb 3 , jsf and jboss is it possible to call an EJB method from web module?
即使我的Java EE应用程序中有不同的模块,包括myproject-web和myproject-ejb; 是否可以从Web模块中的托管Bean调用(或注入)我在ejb模块中的ejb会话bean? 当我之前询问时,我看到以下声明:
@EJB private BeanInterface yourbean
但是,我想了解是否有可能在不同的上下文之间相互调用(其中一个在ejb上下文中,另一个在托管上下文中是在Web上下文中)?
任何帮助,将不胜感激。
您可以在@ManagedBean
类中注入@EJB
,但@ManagedBean
不能。 如果要在EJB类中执行所需的业务逻辑,则必须将托管Bean实例作为方法自变量传递。
@Stateless
public class EJB {
public void process(ManagedBean bean) {
// Business logic.
}
}
@ManagedBean
public class ManagedBean {
@EJB private EJB ejb;
public void submit() {
ejb.process(this);
}
}
如果您真的想这样做,我想您可以尝试编写自己的属性解析器并自行注入(我没有尝试)。
我发现如果不编写自己的解析器是不可能的。.谢谢
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.