I've been using Axis and JBoss together for a few months, with mixed results. I'm using the java:EJB provider to connect to stateless session beans.
On a fresh server restart everything works great. However, after redeploying the ear file, I almost always experience:
13:46:30,112 ERROR [org.jboss.web.localhost.Engine]
Root Cause
java.lang.NullPointerException
at org.jboss.mx.loading.UnifiedClassLoader.findResources(UnifiedClassLoader.java:374)
at java.lang.ClassLoader.getResources(ClassLoader.java:825)
at java.lang.ClassLoader.getResources(ClassLoader.java:821)
at java.lang.ClassLoader.getResources(ClassLoader.java:821)
at org.apache.commons.discovery.jdk.JDK12Hooks.getResources(JDK12Hooks.java:150)
at org.apache.commons.discovery.resource.DiscoverResources$1.getNextResources(DiscoverResources.java:153)
at org.apache.commons.discovery.resource.DiscoverResources$1.getNextResource(DiscoverResources.java:129)
at org.apache.commons.discovery.resource.DiscoverResources$1.hasNext(DiscoverResources.java:116)
at org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.getNextClassNames(DiscoverNamesInFile.java:186)
at org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.getNextClassName(DiscoverNamesInFile.java:170)
at org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.hasNext(DiscoverNamesInFile.java:157)
at org.apache.commons.discovery.resource.names.NameDiscoverers$1.getNextIterator(NameDiscoverers.java:143)
at org.apache.commons.discovery.resource.names.NameDiscoverers$1.hasNext(NameDiscoverers.java:126)
at org.apache.commons.discovery.resource.classes.ResourceClassDiscoverImpl$1.getNextResource(ResourceClassDiscoverImpl.java:159)
at org.apache.commons.discovery.resource.classes.ResourceClassDiscoverImpl$1.hasNext(ResourceClassDiscoverImpl.java:147)
at org.apache.axis.configuration.EngineConfigurationFactoryFinder$1.run(EngineConfigurationFactoryFinder.java:159)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactory(EngineConfigurationFactoryFinder.java:152)
at org.apache.axis.transport.http.AxisServletBase.getEngineEnvironment(AxisServletBase.java:285)
at org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:208)
at org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:187)
at org.apache.axis.transport.http.AxisServlet.initQueryStringHandlers(AxisServlet.java:953)
at org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:204)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)JBoss' classloading schema is infamous for it's eccentric behavior. Has anyone else experienced the same problem, and if so, do they have a solution. It's annoying to have to restart my server after making a minor change and redeploying.
Use JBoss.NET from the "all" configuration and the associated XDoclet tags and everything should be okay.