如何从应用程序客户端连接远程EJB模块

Zec*_*eck 14 java netbeans java-ee java-ee-6

我在计算机中的远程Glassfish服务器和应用程序客户端中有一个EJB模块.我想从应用程序客户端连接到远程EJB.

这是我的EJB接口:

@Remote
public interface BookEJBRemote
{
    public String getTitle();
}
Run Code Online (Sandbox Code Playgroud)

这是我的ejb:

@Stateless
public class BookEJB implements BookEJBRemote
{

    @Override
    public String getTitle()
    {
        return "Twenty Thousand Leagues Under the Sea";
    }
}
Run Code Online (Sandbox Code Playgroud)

我有几个问题:

  1. 我可以在远程应用程序客户端中使用依赖注入来连接到ejb吗?如果是这样,我该怎么做才能实现这一目标.我是否需要在sun-ejb-jar.xml和sun-application-client.xml中进行配置?换句话说,如果我像@EJB BookEJBRemote书那样使用依赖注入; 应用程序客户端容器如何知道要注入的ejb?我应该在哪里指定信息?
  2. 我该如何运行应用程序客户端?我试图在glassfish服务器中运行package-appclient来获取appclient.jar并将其复制到我的计算机上.然后我输入appclient.jar -client myAppClient.jar.它没用.我如何指向目标服务器?
  3. 如果我不能在客户端使用依赖注入,那么我想我必须使用JNDI查找.我是否需要在sun-ejb-jar.xml或sun-application-client.xml中配置jndi名称?

无论我如何尝试,我从未设法运行应用程序客户端?你们能举一些工作的例子吗?谢谢你的每一个建议和例子?

sta*_*ker 3

查看本教程创建 Java 独立客户端。基本上你需要

  • 由于您的客户端无法使用容器环境,因此请自行设置 JNDI。
  • 查找远程接口。
  • 当然,在类路径中包含所需的 jar 文件