You should not refer Karaf provided features repositories in your features XML (like spring for instance).

It seems that your classes use jersey for JAX-RS annotation, instead of CXF-RS. Can you double check there ?

Regards
JB

On 07/08/2015 09:13 PM, Pratt, Jason wrote:
Hello,

I am stumbling on why my CXF restful calls are failing now. I’ve asked
on the CXF user group and Sergey suggested I look at Christian’s
tutorial code, which is what I used to setup the myapp up initially. It
was working when I was on Karaf-3.0.3 with no issues, but since
upgrading to 3.0.4 I began to use a KAR file to make team development
easier.

I am hoping that I am just missing a bundle in my CXF feature, but I am
not sure. I have included it along with the error below.

<?xmlversion=/"1.0"/ encoding=/"UTF-8"/?>

<featuresname=/"myapp-karaf-1.0.0"/
xmlns=/"http://karaf.apache.org/xmlns/features/v1.2.0"/>

<repository>mvn:org.apache.cxf.karaf/_apache_-_cxf_/3.1.1/_xml_/features</repository>

<repository>mvn:org.apache.camel.karaf/_apache_-camel/2.15.2/_xml_/features</repository>

<repository>mvn:org.ops4j.pax.jdbc/_pax_-_jdbc_-features/0.6.0/_xml_/features</repository>

<repository>mvn:org.apache.karaf.features/spring/3.0.3/_xml_/features</repository>

<featurename=/"hibernate-4-jpa21"/ description=/"Hibernate 4.3.10 JPA
2.1 persistence engine support"/ install=/"manual"/ version=/"4.3.10"/>

<bundlestart-level=/"30"/>mvn:org.apache.geronimo.specs/_geronimo_-jta_1.1_spec/1.1.1</bundle>

<bundlestart-level=/"30"/>mvn:org.hibernate.javax.persistence/_hibernate_-_jpa_-2.1-_api_/1.0.0.Final</bundle>

<bundlestart-level=/"30"/>mvn:org.apache.geronimo.specs/_geronimo_-servlet_3.0_spec/1.0</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.antlr/2.7.7_5</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/1.8.4_1</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/1.6.1_5</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/1.15.1_1</bundle>

<bundle>mvn:com.fasterxml/classmate/1.1.0</bundle>

<bundle>mvn:org.javassist/_javassist_/3.18.2-GA</bundle>

<bundle>mvn:org.jboss.spec.javax.security.jacc/_jboss_-_jacc_-api_1.4_spec/1.0.2.Final</bundle>

<bundle>wrap:mvn:org.jboss/_jandex_/1.2.4.Final</bundle>

<bundle>mvn:org.jboss.logging/_jboss_-logging/3.1.4.GA</bundle>

<bundle>mvn:org.hibernate.common/_hibernate_-commons-annotations/4.0.5.Final</bundle>

<bundle>mvn:com.zaxxer/HikariCP-java6/2.3.8</bundle>

<bundle>mvn:org.hibernate/_hibernate_-core/4.3.10.Final</bundle>

<bundle>mvn:org.hibernate/_hibernate_-_hikaricp_/4.3.10.Final</bundle>

<bundle>mvn:org.hibernate/_hibernate_-_envers_/4.3.10.Final</bundle>

<bundle>mvn:org.hibernate/_hibernate_-_entitymanager_/4.3.10.Final</bundle>

<bundle>mvn:org.hibernate/_hibernate_-_osgi_/4.3.10.Final</bundle>

</feature>

<featurename=/"karaf-general"/ description=/"MYAPP general requirements
for Karaf"/ install=/"auto"/ version=/"1.0.0"/>

<feature>_jndi_</feature>

<feature>_jdbc_</feature>

<feature>_jms_</feature>

<feature>_http_</feature>

<feature>_http_-_whiteboard_</feature>

<feature>_jetty_</feature>

<feature>war</feature>

<feature>_webconsole_</feature>

<feature>_eventadmin_</feature>

<feature>blueprint-web</feature>

<feature>_aries_-annotation</feature>

<bundle>mvn:javax.annotation/javax.annotation-_api_/1.2</bundle>

</feature>

<featurename=/"karaf-database"/ description=/"MYAPP database
requirements for Karaf"/ install=/"manual"/ version=/"1.0.0"/>

<feature>_jpa_</feature>

<featureversion=/"[1.0.0,2)"/>transaction</feature>

<featureversion=/"0.6.0"/>_pax_-_jdbc_-_mysql_</feature>

<featureversion=/"0.6.0"/>_pax_-_jdbc_-pool-dbcp2</feature>

<featureversion=/"0.6.0"/>_pax_-_jdbc_-_config_</feature>

<bundlestart-level=/"30"/>mvn:mysql/_mysql_-connector-java/5.1.35</bundle>

<bundlestart-level=/"30"/>mvn:org.apache.aries.jpa/org.apache.aries.jpa.blueprint.aries/1.0.2</bundle>

</feature>

<featurename=/"karaf-cxf"/ description=/"MYAPP cxf requirements for
Karaf"/ install=/"manual"/ version=/"3.1.1"/>

<featureversion=/"3.1.1"/ >_cxf_</feature>

<featureversion=/"3.1.1"/ >_cxf_-core</feature>

<featureversion=/"3.1.1"/ >_cxf_-_wsdl_</feature>

<featureversion=/"3.1.1"/ >_cxf_-_http_</feature>

<featureversion=/"3.1.1"/ >_cxf_-_http_-_jetty_</feature>

<featureversion=/"3.1.1"/ >_cxf_-_jaxws_</feature>

<featureversion=/"3.1.1"/ >_cxf_-_jaxrs_</feature>

<bundle>mvn:org.apache.cxf/_cxf_-_rt_-_frontend_-_jaxrs_/3.1.1</bundle>

<bundle>mvn:javax.ws.rs/javax.ws.rs-_api_/2.0.1</bundle>

</feature>

<featurename=/"karaf-jackson"/ description=/"MYAPP JSON requirements for
Karaf"/ install=/"auto"/ version=/"2.5.4"/>

<bundle>mvn:com.fasterxml.jackson.core/_jackson_-core/2.5.4</bundle>

<bundle>mvn:com.fasterxml.jackson.core/_jackson_-annotations/2.5.4</bundle>

<bundle>mvn:com.fasterxml.jackson.core/_jackson_-_databind_/2.5.4</bundle>

<bundle>mvn:com.fasterxml.jackson.jaxrs/_jackson_-_jaxrs_-_json_-provider/2.5.4</bundle>

<bundle>mvn:com.fasterxml.jackson.jaxrs/_jackson_-_jaxrs_-base/2.5.4</bundle>

<bundle>mvn:org.codehaus.jackson/_jackson_-_jaxrs_/1.9.13</bundle>

<bundle>mvn:org.codehaus.jackson/_jackson_-core-_asl_/1.9.13</bundle>

<bundle>mvn:org.codehaus.jackson/_jackson_-_mapper_-_asl_/1.9.13</bundle>

</feature>

<featurename=/"karaf-camel"/ description=/"MYAPP camel requirements for
Karaf"/ install=/"auto"/ version=/"2.15.2"/>

<featureversion=/"2.15.2"/ >camel</feature>

<featureversion=/"2.15.2"/ >camel-base64</feature>

<featureversion=/"2.15.2"/ >camel-cache</feature>

<featureversion=/"2.15.2"/ >camel-context</feature>

<featureversion=/"2.15.2"/ >camel-couchdb</feature>

<featureversion=/"2.15.2"/ >camel-eventadmin</feature>

<featureversion=/"2.15.2"/ >camel-jetty</feature>

<featureversion=/"2.15.2"/ >camel-jackson</feature>

<featureversion=/"2.15.2"/ >camel-jdbc</feature>

<featureversion=/"2.15.2"/ >camel-jms</feature>

<featureversion=/"2.15.2"/ >camel-jmx</feature>

<featureversion=/"2.15.2"/ >camel-jpa</feature>

<featureversion=/"2.15.2"/ >camel-jsonpath</feature>

<featureversion=/"2.15.2"/ >camel-paxlogging</feature>

<featureversion=/"2.15.2"/ >camel-quartz2</feature>

<featureversion=/"2.15.2"/ >camel-rabbitmq</feature>

<featureversion=/"2.15.2"/ >camel-stream</feature>

<featureversion=/"2.15.2"/ >camel-sql</feature>

<featureversion=/"2.15.2"/ >camel-test</feature>

</feature>

<!-- needed for some myapp camel routes -->

<featurename=/"karaf-spring"/ description=/"MYAPP springframework
requirements for Karaf"/ install=/"auto"/ version=/"3.0.3"/>

<featureversion=/"1.2.1"/>spring-dm</feature>

<featureversion=/"3.2.11.RELEASE_1"/>spring</feature>

<featureversion=/"3.2.11.RELEASE_1"/>spring-jdbc</feature>

<featureversion=/"3.2.11.RELEASE_1"/>spring-jms</feature>

<featureversion=/"3.2.11.RELEASE_1"/>spring-orm</feature>

<featureversion=/"3.2.11.RELEASE_1"/>spring-tx</feature>

<featureversion=/"3.2.11.RELEASE_1"/>spring-web</feature>

</feature>

<featurename=/'myapp-basic'/ description=/'MYAPP basic requirements to
run in Karaf'/ version=/'1.0.0'/>

<details>${project.description}</details>

<featureversion=/"1.0.0"/ >karaf-general</feature>

<featureversion=/"1.0.0"/ >karaf-database</feature>

<featureversion=/"4.3.10"/ >hibernate-4-jpa21</feature>

<featureversion=/"3.1.1"/ >karaf-cxf</feature>

<featureversion=/"2.5.4"/ >karaf-jackson</feature>

<featureversion=/"2.15.2"/ >karaf-camel</feature>

<featureversion=/"3.0.3"/ >karaf-spring</feature>

</feature>

</features>

2015-07-07 12:39:37,869 | WARN  | tp1522718697-168 |
PhaseInterceptorChain            | 181 - org.apache.cxf.cxf-core - 3.1.1
| Interceptor for {http://xxx/}$ProductLineServiceImpl777114985 has
thrown exception, unwinding now

java.lang.RuntimeException: java.lang.ClassNotFoundException:
org.glassfish.jersey.internal.RuntimeDelegateImpl not found by
javax.ws.rs-api [244]

                at
javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:152)

                at
javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:120)

                at
javax.ws.rs.core.Response$ResponseBuilder.newInstance(Response.java:848)

                at javax.ws.rs.core.Response.status(Response.java:613)

                at
org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.processResponse(JAXRSOutInterceptor.java:111)[195:org.apache.cxf.cxf-rt-frontend-jaxrs:3.1.1]

                at
org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.handleMessage(JAXRSOutInterceptor.java:81)[195:org.apache.cxf.cxf-rt-frontend-jaxrs:3.1.1]

                at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)[181:org.apache.cxf.cxf-core:3.1.1]

                at
org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:83)[181:org.apache.cxf.cxf-core:3.1.1]

                at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)[181:org.apache.cxf.cxf-core:3.1.1]

                at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)[181:org.apache.cxf.cxf-core:3.1.1]

                at
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:251)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at
org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:293)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:217)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at
javax.servlet.http.HttpServlet.service(HttpServlet.java:575)[70:org.apache.geronimo.specs.geronimo-servlet_3.0_spec:1.0.0]

                at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:268)[188:org.apache.cxf.cxf-rt-transports-http:3.1.1]

                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)[:1.7.0_79]

                at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_79]

                at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_79]

                at
java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_79]

                at
org.apache.aries.proxy.impl.ProxyHandler$1.invoke(ProxyHandler.java:54)[12:org.apache.aries.proxy.impl:1.0.4]

                at
org.apache.aries.proxy.impl.ProxyHandler.invoke(ProxyHandler.java:119)[12:org.apache.aries.proxy.impl:1.0.4]

                at
org.apache.aries.blueprint.proxy.javax.servlet.http.$HttpServlet648237498.service(Unknown
Source)[70:org.apache.geronimo.specs.geronimo-servlet_3.0_spec:1.0.0]

                at
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:503)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:69)[117:org.ops4j.pax.web.pax-web-jetty:3.2.3]

                at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:240)[117:org.ops4j.pax.web.pax-web-jetty:3.2.3]

                at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:429)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:75)[117:org.ops4j.pax.web.pax-web-jetty:3.2.3]

                at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.Server.handle(Server.java:370)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:696)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:53)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[108:org.eclipse.jetty.aggregate.jetty-all-server:8.1.17.v20150415]

                at java.lang.Thread.run(Thread.java:745)[:1.7.0_79]

Caused by: java.lang.ClassNotFoundException:
org.glassfish.jersey.internal.RuntimeDelegateImpl not found by
javax.ws.rs-api [244]

                at
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)

                at
org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)

                at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)

                at
java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_79]

                at java.lang.Class.forName0(Native Method)[:1.7.0_79]

                at java.lang.Class.forName(Class.java:191)[:1.7.0_79]

                at
javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:115)

                at
javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:225)

                at
javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:135)

                ... 51 more

2015-07-07 12:39:37,954 | INFO  | tp1522718697-168 |
LoggingOutInterceptor            | 181 - org.apache.cxf.cxf-core - 3.1.1
| Outbound Message

---------------------------

ID: 1

Response-Code: 500

Encoding: UTF-8

Content-Type: application/json

Headers: {}

Payload: <ns1:XMLFault
xmlns:ns1="http://cxf.apache.org/bindings/xformat";><ns1:faultstring
xmlns:ns1="http://cxf.apache.org/bindings/xformat";>java.lang.RuntimeException:
java.lang.ClassNotFoundException:
org.glassfish.jersey.internal.RuntimeDelegateImpl not found by
javax.ws.rs-api [244]</ns1:faultstring></ns1:XMLFault>

--------------------------------------


--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com

Reply via email to