Dan,
Thanks for the reply. I did as you said, depending on the cxf-rt-
frontend-jaxrs module, and here is what happened:
- compiled clean.
- deployed to Tomcat, and started Tomcat successfully (no errors).
- invoked a rest service from a client, and received the following
exception:
SEVERE: Servlet.service() for servlet CXFServlet threw exception
java.lang.NoSuchMethodError:
org.apache.abdera.protocol.error.ErrorExtensionFactory.addImpl(Ljavax/
xml/namespace/QName;Ljava/lang/Class;)Lorg/apache/abdera/util/
AbstractExtensionFactory;
at
org
.apache
.abdera
.protocol
.error.ErrorExtensionFactory.<init>(ErrorExtensionFactory.java:27)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun
.reflect
.NativeConstructorAccessorImpl
.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun
.reflect
.DelegatingConstructorAccessorImpl
.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.apache.abdera.util.ServiceUtil._create(ServiceUtil.java:174)
at org.apache.abdera.util.ServiceUtil.locateInstance(ServiceUtil.java:
217)
at org.apache.abdera.util.ServiceUtil._loadimpls(ServiceUtil.java:325)
at
org
.apache
.abdera.util.ServiceUtil.loadExtensionFactories(ServiceUtil.java:302)
at
org
.apache
.abdera.util.AbderaConfiguration.<init>(AbderaConfiguration.java:95)
at
org
.apache
.abdera.util.AbderaConfiguration.<init>(AbderaConfiguration.java:81)
at
org
.apache
.abdera.util.AbderaConfiguration.getDefault(AbderaConfiguration.java:48)
at org.apache.abdera.Abdera.<init>(Abdera.java:56)
at
org
.apache
.cxf.jaxrs.provider.AtomFeedProvider.<clinit>(AtomFeedProvider.java:46)
at
org
.apache.cxf.jaxrs.provider.ProviderFactory.<init>(ProviderFactory.java:
49)
at
org
.apache
.cxf.jaxrs.provider.ProviderFactory.<clinit>(ProviderFactory.java:38)
at
org
.apache
.cxf
.jaxrs
.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:
86)
at
org
.apache
.cxf
.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at
org
.apache
.cxf
.transport
.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:78)
at
org
.apache
.cxf
.transport.servlet.ServletDestination.invoke(ServletDestination.java:92)
at
org
.apache
.cxf
.transport
.servlet.ServletController.invokeDestination(ServletController.java:214)
at
org
.apache
.cxf.transport.servlet.ServletController.invoke(ServletController.java:
113)
at
org
.apache
.cxf
.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:
170)
at
org
.apache
.cxf
.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:
148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at
org
.apache
.catalina
.core
.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
290)
at
org
.apache
.catalina
.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org
.apache
.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
233)
at
org
.apache
.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
175)
at
org
.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
128)
at
org
.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
102)
at
org
.apache
.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
286)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
844)
at org.apache.coyote.http11.Http11Protocol
$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:
447)
at java.lang.Thread.run(Thread.java:619)
Any ideas?
Thanks! There is next to nothing on Google about this, any help you
can give is greatly appreciated.
B
On Aug 1, 2008, at 12:40 PM, Daniel Kulp wrote:
In theory, all you should need is to depend on the cxf-rt-frontend-
jaxrs module and it would pull in all the rest of the stuff it needs.
This specific error could be addressed by depending on:
org.apache.ws.commons.axiom:axiom-impl:jar:1.2.7
Dan
On Aug 1, 2008, at 3:16 PM, Brad O'Hearne wrote:
Hello,
I have been using the 2.1-incubating version of CXF for several
months, and have tried upgrading to 2.1.1. When I did so, my app
compiled / deployed cleanly, but I received an error from my server
when it tried to initialize the CXF servlet. I believe this is
likely due to some change in the dependency list -- I tried cut/
paste from the user guide, plus adding a few jars (jax-rs
transport, for one), but the same error occurred. Long story short,
I am trying to use CXF and RESTful services via jax-rs. Can someone
enlighten me as to the Maven dependencies and versions which need
to be declared in my pom.xml? It does not appear that these are
listed in the user guide.
Thanks, my stack trace is below.
Cheers,
Brad
STACK TRACE
SEVERE: Servlet.service() for servlet CXFServlet threw exception
java.lang.ClassNotFoundException:
org.apache.axiom.om.impl.llom.factory.OMLinkedListImplFactory
at
org
.apache
.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1360)
at
org
.apache
.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1206)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:
124)
at
org
.apache
.catalina
.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:
1819)
at
org
.apache
.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:
872)
at
org
.apache
.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1327)
at
org
.apache
.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1206)
at
org.apache.abdera.util.ServiceUtil.locateInstance(ServiceUtil.java:
228)
at
org.apache.abdera.util.ServiceUtil.locateInstance(ServiceUtil.java:
222)
at org.apache.abdera.util.ServiceUtil.locate(ServiceUtil.java:144)
at org.apache.abdera.util.ServiceUtil.newInstance(ServiceUtil.java:
58)
at
org
.apache.abdera.util.ServiceUtil.newFactoryInstance(ServiceUtil.java:
97)
at
org
.apache
.abdera
.util
.AbderaConfiguration.newFactoryInstance(AbderaConfiguration.java:273)
at org.apache.abdera.Abdera.newFactory(Abdera.java:210)
at org.apache.abdera.Abdera.<init>(Abdera.java:90)
at org.apache.abdera.Abdera.<init>(Abdera.java:81)
at
org
.apache
.cxf.jaxrs.provider.AtomFeedProvider.<clinit>(AtomFeedProvider.java:
46)
at
org
.apache
.cxf.jaxrs.provider.ProviderFactory.<init>(ProviderFactory.java:49)
at
org
.apache
.cxf.jaxrs.provider.ProviderFactory.<clinit>(ProviderFactory.java:38)
at
org
.apache
.cxf
.jaxrs
.interceptor
.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:86)
at
org
.apache
.cxf
.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:
221)
at
org
.apache
.cxf
.transport
.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:78)
at
org
.apache
.cxf
.transport
.servlet.ServletDestination.invoke(ServletDestination.java:92)
at
org
.apache
.cxf
.transport
.servlet.ServletController.invokeDestination(ServletController.java:
214)
at
org
.apache
.cxf
.transport.servlet.ServletController.invoke(ServletController.java:
113)
at
org
.apache
.cxf
.transport
.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:170)
at
org
.apache
.cxf
.transport
.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at
org
.apache
.catalina
.core
.ApplicationFilterChain
.internalDoFilter(ApplicationFilterChain.java:290)
at
org
.apache
.catalina
.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
206)
at
org
.apache
.catalina
.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org
.apache
.catalina
.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org
.apache
.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at
org
.apache
.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org
.apache
.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
109)
at
org
.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
286)
at
org
.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
844)
at org.apache.coyote.http11.Http11Protocol
$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint
$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Aug 1, 2008 11:43:07 AM
org.apache.catalina.core.StandardWrapperValve invoke
---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog