DeploymentException when trying to deploy webservice with th
thorstenschmid Jul 30, 2008 10:14 AMI get a org.jboss.deployment.DeploymentException caused by a java.lang.ClassNotFoundException: org.jboss.ws.core.soap.SAAJMetaFactoryImpl when I try to deploy a 'war' file containing a webservice. My JBoss installation includes the metro webservice stack.
Does anyone have an idea which library is missing and where I have to deploy it?
Thank you very much in advance.
The exception stacktrace is:
...
15:37:01,320 INFO [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
15:37:01,585 INFO [TomcatDeployer] deploy, ctxPath=/rpe-webapp, warUrl=.../tmp/deploy/tmp17308rpe-webapp-exp.war/
15:37:01,742 INFO [http] WSSERVLET12: JAX-WS context listener initializing
15:37:02,257 ERROR [http] WSSERVLET11: failed to parse runtime descriptor: java.lang.ExceptionInInitializerError
java.lang.ExceptionInInitializerError
at com.sun.xml.ws.api.BindingID.(BindingID.java:318)
at com.sun.xml.ws.transport.http.DeploymentDescriptorParser.createBinding(DeploymentDescriptorParser.java:302)
at com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parseAdapters(DeploymentDescriptorParser.java:243)
at com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parse(DeploymentDescriptorParser.java:147)
at com.sun.xml.ws.transport.http.servlet.WSServletContextListener.contextInitialized(WSServletContextListener.java:108)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3854)
...
...
Caused by: java.lang.IllegalStateException: Failed to load javax.xml.soap.MetaFactory: org.jboss.ws.core.soap.SAAJMetaFactoryImpl
at javax.xml.soap.SAAJFactoryLoader.loadFactory(SAAJFactoryLoader.java:131)
at javax.xml.soap.SAAJMetaFactory.getInstance(SAAJMetaFactory.java:60)
at javax.xml.soap.MessageFactory.newInstance(MessageFactory.java:106)
at com.sun.xml.ws.api.SOAPVersion.(SOAPVersion.java:178)
at com.sun.xml.ws.api.SOAPVersion.(SOAPVersion.java:83)
... 140 more
Caused by: java.lang.ClassNotFoundException: org.jboss.ws.core.soap.SAAJMetaFactoryImpl
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
at javax.xml.soap.SAAJFactoryLoader.loadFactory(SAAJFactoryLoader.java:125)
... 144 more
15:37:02,257 ERROR [ContainerBase] Exception sending context initialized event to listener instance of class com.sun.xml.ws.transport.http.servlet.WSServletContextListener
com.sun.xml.ws.transport.http.servlet.WSServletException: WSSERVLET11: failed to parse runtime descriptor: java.lang.ExceptionInInitializerError
at com.sun.xml.ws.transport.http.servlet.WSServletContextListener.contextInitialized(WSServletContextListener.java:118)
...
...
This is my web.xml:
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <listener> <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class> </listener> <servlet> <servlet-name>ws</servlet-name> <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>ws</servlet-name> <url-pattern>/ws</url-pattern> </servlet-mapping> <session-config> <session-timeout>60</session-timeout> </session-config> </web-app>
And this is my sun-jaxws.xml:
<?xml version="1.0" encoding="UTF-8"?> <endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime" version="2.0"> <endpoint name="RPEService" implementation="de.jamba.esb.rpe.service.RPEService" url-pattern="/ws"/> </endpoints>