Hello list,
I have written non spring CXF servlet as described at [1].
public class ExoCXFNonSpringServlet extends CXFNonSpringServlet {
While deploying on tomcat I have the exceptions.
With jaxb-impl-2.1.7.jar.
java.lang.NoClassDefFoundError:
javax/xml/ws/soap/MTOM
at
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.loadWSFeatureAnnotation(JaxWsServiceFactoryBean.java:127)
at
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.initConfiguration(JaxWsServiceFactoryBean.java:415)
at
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.setJaxWsImplementorInfo(JaxWsServiceFactoryBean.java:391)
at
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.setServiceClass(JaxWsServiceFactoryBean.java:174)
at
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.initializeServiceFactory(AbstractWSDLBasedEndpointFactory.java:227)
at
org.apache.cxf.frontend.ServerFactoryBean.initializeServiceFactory(ServerFactoryBean.java:156)
at
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:99)
at
org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:116)
at
org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:168)
at
org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:336)
at
org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:251)
at
org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:201)
at
org.apache.cxf.jaxws.spi.ProviderImpl.createAndPublishEndpoint(ProviderImpl.java:84)
at
javax.xml.ws.Endpoint.publish(Endpoint.java:169)
at
org.exoplatform.services.ws.impl.xfire.transport.http.ExoCXFNonSpringServlet.loadBus(ExoCXFNonSpringServlet.java:97)
Without that.
java.lang.NoClassDefFoundError:
com/sun/xml/bind/marshaller/NamespacePrefixMapper
at
org.apache.cxf.service.factory.ReflectionServiceFactoryBean.createDefaultDataBinding(ReflectionServiceFactoryBean.java:181)
at
org.apache.cxf.service.factory.AbstractServiceFactoryBean.getDataBinding(AbstractServiceFactoryBean.java:56)
at
org.apache.cxf.frontend.ServerFactoryBean.applyExtraClass(ServerFactoryBean.java:203)
at
org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:106)
at
org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:168)
at
org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:336)
at
org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:251)
at
org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:201)
at
org.apache.cxf.jaxws.spi.ProviderImpl.createAndPublishEndpoint(ProviderImpl.java:84)
at
javax.xml.ws.Endpoint.publish(Endpoint.java:169)
at
org.exoplatform.services.ws.impl.xfire.transport.http.ExoCXFNonSpringServlet.loadBus(ExoCXFNonSpringServlet.java:97)
[1]
http://cwiki.apache.org/CXF20DOC/servlet-transport.html#ServletTransport-UsingtheservlettransportwithoutSpring
PS: i'm using jdk:
$ java -version
java version "1.5.0_11"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
Java HotSpot(TM) Server VM (build 1.5.0_11-b03, mixed mode)
Tomcat's version is 6.0.10.
Regards,
Alexey.