I've double checked - our ESB distribution uses Karaf 4.0 and the demo code creates Response which requires RuntimeDelegate being located, and all works there. I'm not sure, perhaps something might've changed in Karaf 4.0, related to installing CXF features in a pure Karaf environment, may need to be investigated

Sergey

On 08/07/15 11:01, Sergey Beryozkin wrote:
In meantime I've also updated the code which does not in your case to
avoid going the RuntimeDelegate path:

http://git-wip-us.apache.org/repos/asf/cxf/commit/34234618

So simple services (those which do not create JAX-RS Response or use
various JAX-RS utility calls like MediaType.valueOf("a/b"), etc, in the
application code) will likely need no service mix spec at all...

Cheers, Sergey


On 08/07/15 10:38, Sergey Beryozkin wrote:
I guess, if you start with a pure Karaf, as opposed to a ESB package,
then have a look at

http://www.liquid-reality.de/display/liquid/2011/12/22/Karaf+Tutorial+Part+4+-+CXF+Services+in+OSGi



and may be

http://www.liquid-reality.de/display/liquid/2012/01/20/Big+improvements+for+CXF+in+OSGi+ahead+with+version+2.6.0



Cheers, Sergey

On 07/07/15 22:59, Pratt, Jason wrote:
Nope, I installed version 2.5.0 of
org.apache.servicemix.specs/org.apache.servicemix.specs.jsr339-api-2.0
Still receiving the same error

-----Original Message-----
From: Pratt, Jason [mailto:jason.pr...@windriver.com]
Sent: Tuesday, July 07, 2015 2:03 PM
To: users@cxf.apache.org
Subject: RE: HELP - org.glassfish.jersey.internal.RuntimeDelegateImpl
not found by javax.ws.rs

No I did not know that was required for restful calls in CXF.

I will try installing that now

-----Original Message-----
From: Sergey Beryozkin [mailto:sberyoz...@gmail.com]
Sent: Tuesday, July 07, 2015 1:49 PM
To: users@cxf.apache.org
Subject: Re: HELP - org.glassfish.jersey.internal.RuntimeDelegateImpl
not found by javax.ws.rs

Is

org.apache.servicemix.specs/org.apache.servicemix.specs.jsr339-api-2.0

installed ?

I was running a demo with CXF 3.1.1 few days back in Karaf, no problems.
I'll get JAXRSOutInterceptor updated anyway to avoid RuntimeDelegate
to avoid some strange errors like this one (may be some ordering
issue, etc)

Sergey

On 07/07/15 20:54, Pratt, Jason wrote:
CXF-3.1.1
KARAF-3.0.4
JDK 1.7

I just started seeing this WARN message in my log, it is happening
during a RESTful call. The call passes back a json document, it was
working fine but now I am getting a 500 response.
Any advice would be great!


2015-07-07 12:39:37,869 | WARN  | tp1522718697-168 |
PhaseInterceptorChain            | 181 - org.apache.cxf.cxf-core -
3.1.1 | Interceptor for
{http://service.product.core.dart.ept.wrs.com/}$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.RuntimeEx
ception: java.lang.ClassNotFoundException:
org.glassfish.jersey.internal.RuntimeDelegateImpl not found by
javax.ws.rs-api [244]</ns1:faultstring></ns1:XMLFault>
--------------------------------------





Reply via email to