Я пытаюсь создать клиент ejb в модуле appliactaions платформы Netbean, чтобы вызвать ejb, развернутый в glassfish.
Я добавил все необходимые файлы jar из моего приложения на сервере ejb и требуемые файлы jashfish.
appserv-rt.jar, javaee.jar, gf-client.jar.
Следующий код работает нормально, когда вызывается из отдельного Java-приложения, но когда я пытаюсь вызвать его из модуля приложения NetBeans Platf, я не могу получить контекст.
Требуются ли какие-либо конкретные конфигурации платформы 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();
}