Jsf 在managedBean中注入远程EJB
从x时代开始,我就一直在研究如何在JSF应用程序的托管bean中注入远程EJB。 我已经创建了一个简单的java应用程序,我来向远程EJB注入查找。。。它是有效的。 但是当我使用web应用程序时,我真的不知道该怎么做 以下是我的EJB代码:Jsf 在managedBean中注入远程EJB,jsf,ejb-3.0,Jsf,Ejb 3.0,从x时代开始,我就一直在研究如何在JSF应用程序的托管bean中注入远程EJB。 我已经创建了一个简单的java应用程序,我来向远程EJB注入查找。。。它是有效的。 但是当我使用web应用程序时,我真的不知道该怎么做 以下是我的EJB代码: @Stateless public class Hello implements HelloRemote { @Override public String sayHello(String name) { return "Hello, "+nam
@Stateless
public class Hello implements HelloRemote {
@Override
public String sayHello(String name) {
return "Hello, "+name;
}
}
远程接口是
@Remote
public interface HelloRemote {
public String sayHello(String name);
}
在我的web应用程序中,我创建了我管理的bean:
@ManagedBean
public class MyBean {
@EJB
HelloRemote helloRemote;
}
但它不起作用:(如果您想在本地公开EJB,您必须在接口上使用
@Local
)
如果要在本地和远程公开,必须创建两个接口,一个带有@Local
,另一个带有@Remote
如果您的JSF ManagedBean(MyBean)在本地运行,即,与EJB运行在同一个应用服务器上,您可以使用@EJB
直接注入它
如果您的JSF ManagedBean运行在不同的服务器上,您必须使用JNDI注册表来查找和访问EJB。请添加详细信息,您在服务器日志中遇到了什么错误?