14

我的计算机中有远程 Glassfish 服务器和应用程序客户端中的 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";
    }
}

我有几个问题:

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

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

4

1 回答 1

3

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

  • 自己设置 JNDI,因为您的客户端无法使用容器环境。
  • 查找远程接口。
  • 当然,在你的类路径中包含所需的 jar 文件
于 2010-06-07T05:44:18.280 回答