我在计算机的远程Glassfish服务器和应用程序客户端中有一个EJB模块。我想从应用程序客户端连接到远程EJB。如何从应用程序客户端连接远程EJB模块
这里是我的EJB接口:
@Remote
public interface BookEJBRemote
{
public String getTitle();
}
这里是我的EJB:
@Stateless
public class BookEJB implements BookEJBRemote
{
@Override
public String getTitle()
{
return "Twenty Thousand Leagues Under the Sea";
}
}
我有几个问题:
- 我可以使用依赖注入远程应用程序客户端连接到ejb?如果是的话,我能做些什么来实现这一点。我是否需要在sun-ejb-jar.xml和sun-application-client.xml中进行配置?换句话说,如果我使用依赖注入像@EJB BookEJBRemote书;应用程序客户端容器如何知道要注入哪些ejb?我应该在哪里指定信息?
- 我该如何运行应用程序客户端?我尝试在glassfish服务器中运行package-appclient以获取appclient.jar并将其复制到我的计算机。然后我输入appclient.jar -client myAppClient.jar。它没有工作。我如何指向目标服务器?
- 如果我不能在客户端使用依赖注入,那么我想我必须使用JNDI查找。我是否需要在sun-ejb-jar.xml或sun-application-client.xml中配置jndi名称?
无论我如何尝试,我从来没有设法运行应用程序客户端?你们可以举一些工作的例子吗?并感谢你的每一个建议和例子?
你的问题是在[在客户@EJB注释]部分回答了所需的jar文件(http://stackoverflow.com/questions/848675):GlassFish支持的管理独立的客户端应用程序,如果您通过['bin/appclient -client myprogram.jar'](http://www.ensode.net/glassfish_rich_ejb_clients.html)运行它们。客户端必须在['jndi.properties'](http://www.codeproject.com/Articles/42394/How-to-create-JBoss-ejb3-session-bean-standalone-c)和说明中指定JNDI设置['application-client.xml'](http://download.oracle.com/docs/cd/B15897_01/web.1012/b15505/access.htm#sthref238)中的服务。 – 2011-11-17 00:35:40
我同意这个问题。我在网上阅读的每一篇文章都只显示了如何在netbeans中运行应用程序客户端。似乎没有任何解释如何在netbeans之外运行应用程序客户端。 +1。 – w0051977 2016-10-08 19:57:23