Getting java.lang.ClassNotFoundException: com.sun.jndi.dns.DnsContextFactory in JBoss EAP 8
Issue
When trying to deploy an application in EAP 8 GA, the following exception is thrown:
Caused by: javax.naming.NamingException: WFLYNAM0027: Failed instantiate InitialContextFactory com.sun.jndi.dns.DnsContextFactory from classloader ModuleClassLoader for Module "MyWebApp.war" from Service Module Loader [Root exception is java.lang.ClassNotFoundException: com.sun.jndi.dns.DnsContextFactory from [Module "MyWebApp.war" from Service Module Loader]]
at org.jboss.as.naming@8.0.0.GA-redhat-00011//org.jboss.as.naming.InitialContext.getDefaultInitCtx(InitialContext.java:120)
at org.jboss.as.naming@8.0.0.GA-redhat-00011//org.jboss.as.naming.InitialContext.init(InitialContext.java:101)
at java.naming/javax.naming.ldap.InitialLdapContext.<init>(InitialLdapContext.java:154)
at org.jboss.as.naming@8.0.0.GA-redhat-00011//org.jboss.as.naming.InitialContext.<init>(InitialContext.java:91)
at org.jboss.as.naming@8.0.0.GA-redhat-00011//org.jboss.as.naming.InitialContextFactory.getInitialContext(InitialContextFactory.java:43)
at java.naming/javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:732)
at java.naming/javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:305)
at java.naming/javax.naming.InitialContext.init(InitialContext.java:236)
at java.naming/javax.naming.InitialContext.<init>(InitialContext.java:208)
at java.naming/javax.naming.directory.InitialDirContext.<init>(InitialDirContext.java:130)
at MyWebApp.war//org.example.module.SubModule.ClassName.methodName(JndiDnsClient.java:73)
... 130 more
Caused by: java.lang.ClassNotFoundException: com.sun.jndi.dns.DnsContextFactory from [Module "MyWebApp.war" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:200)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:410)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:467)
at org.jboss.as.naming@8.0.0.GA-redhat-00011//org.jboss.as.naming.InitialContext.getDefaultInitCtx(InitialContext.java:115)
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 8.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.