I can’t get a very simple Java SE 17 application to do a lookup of an Stateless EJB deployed in Payara or Glassfish. Client is very simple : ( never mind the poor code, it gets an exception and are not meant to work)
package client;
import java.util.Properties;
import javax.naming.InitialContext;
import javax.naming.NamingException;
public class Client {
public static void main(String[] args) {
Properties props = new Properties();
props.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.SerialInitContextFactory");
Object o = new Object();
try {
InitialContext context = new InitialContext(props);
o = context.lookup("java:global/USer/User-ejb/UserService");
} catch (NamingException e) {
e.printStackTrace();
}
}
}
The libraries I’m using all come from Payara6 modules and lib directories:
appserv-rt.jar
config-api.jar
gf-client.jar
glassfish-api.jar
glassfish-naming.jar
hk2-api.jar
hk2-config.jar
hk2-core.jar
hk2-locator.jar
hk2-utils.jar
internal-api.jar
From Netbeans I use a library jakarta.jakartaeeapi-10.0.0.jar
Error message is:
java.lang.NullPointerException: Cannot invoke "org.glassfish.internal.api.ORBLocator.getORB()" because "orbHelper" is null
at com.sun.enterprise.naming.impl.SerialContext.getORB(SerialContext.java:351)
at com.sun.enterprise.naming.impl.SerialContext.getProviderCacheKey(SerialContext.java:358)
at com.sun.enterprise.naming.impl.SerialContext.getRemoteProvider(SerialContext.java:388)
at com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:333)
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:482)
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:442)
at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409)
at client.Client.main(Client.java:12)
javax.naming.NamingException: Lookup failed for 'java:global/USer/User-ejb/UserService' in SerialContext[myEnv={java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.initial=com.sun.enterprise.naming.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NamingException: Unable to acquire SerialContextProvider for SerialContext[myEnv={java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.initial=com.sun.enterprise.naming.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is java.lang.NullPointerException: Cannot invoke "org.glassfish.internal.api.ORBLocator.getORB()" because "orbHelper" is null]]
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:496)
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:442)
at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409)
at client.Client.main(Client.java:12)
Caused by: javax.naming.NamingException: Unable to acquire SerialContextProvider for SerialContext[myEnv={java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.initial=com.sun.enterprise.naming.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is java.lang.NullPointerException: Cannot invoke "org.glassfish.internal.api.ORBLocator.getORB()" because "orbHelper" is null]
at com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:338)
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:482)
... 3 more
Caused by: java.lang.NullPointerException: Cannot invoke "org.glassfish.internal.api.ORBLocator.getORB()" because "orbHelper" is null
at com.sun.enterprise.naming.impl.SerialContext.getORB(SerialContext.java:351)
at com.sun.enterprise.naming.impl.SerialContext.getProviderCacheKey(SerialContext.java:358)
at com.sun.enterprise.naming.impl.SerialContext.getRemoteProvider(SerialContext.java:388)
t com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:333)
Nothing in the logs of Payara even with increased loglevels.
Any ideas?
I’m using Netbeans 24 and Payara 6.2024-5. I was expecting to find the bean as it is succesfully deployed in Payrar.