这是方案: 我在eclipse上的Wildfly作为服务器上创建了一个EJB项目。 EJB项目 它已随其bean一起部署,并已在wildfly管理控制台中准备就绪。
现在,我需要创建一个远程客户端来使用EJB项目bean。 我了解这是通过上下文查找完成的。因此,它在客户端中包含以下代码:
Context ctx = new InitialContext(jndiProps);
// lookup the bean Foo interface lives inside the remote EJB
Foo beanRemoteInterface = (Foo) ctx.lookup("myapp/myejbmodule/FooBean!org.myapp.ejb.Foo");
问题在于,由于EJB和客户端位于单独的项目中, Foo接口在客户端代码中是未知的,并且由于没有Foo类型而无法编译客户端。