netbeans平台应用程序模块中的ejb客户端

时间:2011-07-03 15:38:48

标签: ejb netbeans-platform

我试图在Netbean平台appliactaions模块中创建一个ejb客户端,以调用glassfish中部署的ejb。

我已经从我的ejb服务器应用程序和所需的glashfish jar中添加了所有必需的jar文件。 appserv-rt.jar,javaee.jar,gf-client.jar。

以下代码在从独立java应用程序调用时工作正常,但是当我尝试从netbeans platfrom应用程序模块调用它时,我无法获取上下文。

是否需要任何netbean平台特定配置?

 try {
       Properties props = new Properties();
       props.setProperty("java.naming.factory.initial", 
                         "com.sun.enterprise.naming.SerialInitContextFactory");

       props.setProperty("java.naming.factory.url.pkgs", "com.sun.enterprise.naming");

       props.setProperty("java.naming.factory.state",
                        "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl"
        );

       props.setProperty("org.omg.CORBA.ORBInitialHost", "127.0.0.1");
       props.setProperty("org.omg.CORBA.ORBInitialPort","3700");

       InitialContext ctx = new InitialContext (props);
       MySessionBeanRemote mySessionBean=
                             (MySessionBeanRemote)ctx
                                 .lookup("sessions.MySessionBeanRemote");


      Userprofile user = new Userprofile();
        user.setActive('A');
        user.setDescription("some desc");
        user.setEmail("abc");
        user.setFirstname("xyz");
        user.setLastname("123");
        user.setPassword("pwd");
        user.setStatus("Enabled");
        user.setUserid(Long.valueOf(25));

        user.setUsername("abc");
        mySessionBean.persist(user);
      } catch (javax.naming.NamingException ne) {
        ne.printStackTrace();

    } catch (Exception e) {
        e.printStackTrace();
    }

1 个答案:

答案 0 :(得分:0)

这不是一件容易的事。看一下this tutorial,它有点陈旧但应该仍然适用。