如何在websphere中配置和查找JNDI?

问题描述 投票:0回答:2

我现在正在学习EJB,我在JBOSS中创建了一个简单的EJB示例并运行成功,以下是我的步骤:

  1. 在myeclipse中创建EJB项目
  2. 创建一个名为 FirstEjb 的接口
  3. 创建FirstEjbBean实现FirstEjb接口,并标记EJB注解

    
        @Remote
        @Stateless
        public class FirstEjbBean implements FirstEjb {    
            @Override
            public String saySomething(String name) {
                return "Hello, " + name;
            }    
        } 
    
    
    
    

  4. 在 MyEclipse 中创建一个名为“EjbClient”的 Java 项目,将 FirstEjb 接口导出为 *.jar 以及新的 Java 项目对其的引用

  5. 将JBOSS的client目录下的所有jar添加到EjbClient项目中
  6. 在Ejb中创建jndi.properties:

    
        java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
        java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
        java.naming.provider.url=localhost
    
    
    
    

7.创建类FirstEjbClient.java

public class FirstEjbClient {
    public static void main(String[] args) throws NamingException {
        InitialContext context = new InitialContext();
        FirstEjb ejb = (FirstEjb) context.lookup("FirstEjbBean/remote");
        String something = ejb.saySomething("Jimmy.Chen");
        System.out.println(something);
    }
}

然后就可以成功访问EJB了。

问题是,我不知道如何在 websphere 中执行同样的操作。

有一些问题:

  1. 部署EJB项目后,我需要在websphere中配置任何东西吗?像 JNDI 吗??
  2. 我应该将哪些 jar 导入到客户端项目中?这些jar包在websphere的哪个目录下?
  3. 我还需要 jndi.properties 吗?如果需要的话怎么写?

我在网上查了很多,但我找到的都是在websphere中配置数据源。

抱歉我的英语不好,希望有人能理解并提供一些帮助。

提前致谢!

吉米陈

ejb websphere jndi
2个回答
0
投票

你好,
试试这个:

Properties props= new Properties();
props.setProperty(Context.INITIAL_CONTEXT_FACTORY,"com.ibm.websphere.naming.WsnInitialContextFactory");
props.setProperty(Context.PROVIDER_URL,"corbaloc:iiop:localhost:2809");
Context ctx = new InitialContext(props);
Object homeObject = ctx.lookup("some.package.MyEJBRemote"); 
MyEJBRemote myEJB = (MyEJBRemote) javax.rmi.PortableRemoteObject.narrow(homeObject,     some.package.MyEJBRemote);

但是我不确定导入所需的 jar,因为您可以将 WebSphere Application Server X 运行时库添加到 Eclipse 中的构建路径
Eclipse 的 WAS 运行时位于 http://www.ibmdw.net/wasdev/


0
投票

当您在 Eclipse 中创建 EJB 项目时,会创建一个 EJB 部署描述符。您必须在引用选项卡中添加所有 JNDI 资源。 您必须添加 websphere 运行时 JAR,就像添加任何其他 JAR 一样。

© www.soinside.com 2019 - 2024. All rights reserved.