[
https://issues.apache.org/jira/browse/CAMEL-7147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13890890#comment-13890890
]
Sergey Beryozkin commented on CAMEL-7147:
-----------------------------------------
Willem, it is nothing to do with CXF clearing the thread-local proxies on the
invocation thread exiting for whatever reasons.
The reason for this NPE is that we have a single Jackson JAX-RS provider shared
between multiple CXFRS components - this is in itself is fine, we have a test
where a single Jackson provider instance is shared between few endpoints. The
problem is the components in the route have different CXF bus instances => the
server endpoint injects a thread local proxy into Jackson while the client
being injected with a different bus - another one which overrides the
server-injected one, therefore the server thinking it has a proper local proxy
injects the current value into it bur the provider points to another thread
local proxy.
It is a bit of a mess unfortunately.
I've managed to get past the NPE but updating it like this:
{code:xml}
<bean class="org.apache.cxf.bus.blueprint.BlueprintBus" id="jaxrs">
<property name="id" value="jaxrs"/>
</bean>
<cxf:rsServer id="Service1" address="http://localhost:8182"
serviceClass="com.mycompany.camel.blueprint.jackson.ServiceOne"
loggingFeatureEnabled="true"
bus="jaxrs">
<cxf:providers>
<ref component-id="jsonProvider" />
</cxf:providers>
</cxf:rsServer>
<!-- and also injecting the bus references for clients -->
{code}
and then adding a bus ref
{code:xml}
<from uri="cxfrs:bean:Service1?bus=#jaxrs" />
<!-- same for to: -->
{code}
Another work-around is to register a unique Jackson provider per the component,
but that is not cool.
This got me past NPE but I hit:
{noformat}
Caused by: org.codehaus.jackson.map.JsonMappingException: No serializer found
for class org.apache.cxf.helpers.LoadingByteArrayOutputStream$1 and no
properties discovered to create BeanSerializer (to avoid exception, disable
SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS) )
at
org.codehaus.jackson.map.ser.impl.UnknownSerializer.failForEmpty(UnknownSerializer.java:52)[197:jackson-mapper-asl:1.9.13]
{noformat}
I think we are actually hitting the problem to do with Jackson blindly
accepting all types including InputStream, I'll play a bit more with it; CXF
should also be enhanced to allow the thread local contexts shared between
different buses
> NullPointerException when chaining CXF/Jackson REST services in a Camel route
> -----------------------------------------------------------------------------
>
> Key: CAMEL-7147
> URL: https://issues.apache.org/jira/browse/CAMEL-7147
> Project: Camel
> Issue Type: Bug
> Components: camel-cxf, camel-jackson
> Affects Versions: 2.12.0
> Environment: Fuse ESB 6.1.0.alpha
> Reporter: David van Balen
> Assignee: Willem Jiang
> Labels: cxf, cxfrs, json, threadlocal
> Attachments: CAMEL-7147.zip
>
>
> When chaining multiple REST service calls in a single camel route, using
> Jackson as the JSON provider for CXF, the JacksonJsonProvider appears to lose
> its thread local context between invocations, resulting in an NPE. The NPE
> doesn't always occur at the same point. Sometimes one or both additional
> services are successfully called before the thead local context disappears,
> but other times neither service is called and an NPE is thrown as soon as the
> initial service is invoked.
> See attached zip archive for reproducer (service2 and service3 are deployed
> on JBoss AS 7.3.0).
> See camel-users thread for background:
> http://camel.465427.n5.nabble.com/Questions-about-cxfrs-td5746294.html
> Lib versions:
> Camel: 2.12.0
> Jackson: 1.9.10
> CXF: 2.7.0
> Full stacktrace:
> 11:40:51,678 | INFO | tp1806392083-718 | LoggingInInterceptor |
> 150 - org.apache.cxf.cxf-api - 2.7.0.redhat-610139 | Inbound Message
> ----------------------------
> ID: 15
> Address: http://localhost:8182/service1/service1path
> Encoding: ISO-8859-1
> Http-Method: POST
> Content-Type: application/json
> Headers: {Accept=[*/*], accept-encoding=[gzip,deflate,sdch],
> Accept-Language=[en-US,en;q=0.8], connection=[keep-alive],
> Content-Length=[23], content-type=[application/json], Host=[localhost:8182],
> Origin=[chrome-extension://fhjcajmcbmldlhcimfajhfbgofnpcjmb],
> User-Agent=[Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like
> Gecko) Chrome/31.0.1650.63 Safari/537.36]}
> Payload: {"id":1,"name":"Fred"}
> --------------------------------------
> 11:40:51,679 | WARN | tp1806392083-718 | PhaseInterceptorChain |
> 150 - org.apache.cxf.cxf-api - 2.7.0.redhat-610139 | Interceptor for
> {http://jackson.blueprint.camel.mycompany.com/}ServiceOne has thrown
> exception, unwinding now
> java.lang.NullPointerException
> at
> org.apache.cxf.jaxrs.impl.tl.ThreadLocalProviders.getContextResolver(ThreadLocalProviders.java:50)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.locateMapper(JacksonJsonProvider.java:633)[245:jackson-jaxrs:1.9.10]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:413)[245:jackson-jaxrs:1.9.10]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBodyReader(JAXRSUtils.java:1280)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1231)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:782)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:741)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:263)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:103)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:355)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:319)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:72)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1077)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1013)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.Server.handle(Server.java:368)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:943)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1004)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at java.lang.Thread.run(Thread.java:744)[:1.7.0_45]
> 11:40:51,681 | WARN | tp1806392083-718 | PhaseInterceptorChain |
> 150 - org.apache.cxf.cxf-api - 2.7.0.redhat-610139 | Exception in handleFault
> on interceptor
> org.apache.cxf.binding.xml.interceptor.XMLFaultOutInterceptor@7ba1c840
> org.apache.cxf.interceptor.Fault
> at
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:76)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:333)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:355)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:319)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:72)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1077)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1013)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.Server.handle(Server.java:368)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:943)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1004)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at java.lang.Thread.run(Thread.java:744)[:1.7.0_45]
> Caused by: java.lang.NullPointerException
> at
> org.apache.cxf.jaxrs.impl.tl.ThreadLocalProviders.getContextResolver(ThreadLocalProviders.java:50)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.locateMapper(JacksonJsonProvider.java:633)[245:jackson-jaxrs:1.9.10]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:413)[245:jackson-jaxrs:1.9.10]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBodyReader(JAXRSUtils.java:1280)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1231)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:782)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:741)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:263)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:103)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> ... 21 more
> 11:40:51,682 | ERROR | tp1806392083-718 | tractFaultChainInitiatorObserver |
> 150 - org.apache.cxf.cxf-api - 2.7.0.redhat-610139 | Error occurred during
> error handling, give up!
> org.apache.cxf.interceptor.Fault
> at
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:76)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:333)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:355)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:319)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:72)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1077)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1013)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.Server.handle(Server.java:368)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:943)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1004)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at java.lang.Thread.run(Thread.java:744)[:1.7.0_45]
> Caused by: java.lang.NullPointerException
> at
> org.apache.cxf.jaxrs.impl.tl.ThreadLocalProviders.getContextResolver(ThreadLocalProviders.java:50)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.locateMapper(JacksonJsonProvider.java:633)[245:jackson-jaxrs:1.9.10]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:413)[245:jackson-jaxrs:1.9.10]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBodyReader(JAXRSUtils.java:1280)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1231)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:782)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:741)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:263)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:103)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> ... 21 more
> 11:40:51,683 | WARN | tp1806392083-718 | AbstractHttpConnection |
> 93 - org.eclipse.jetty.aggregate.jetty-all-server - 8.1.9.v20130131 |
> /service1/service1path
> java.lang.RuntimeException: org.apache.cxf.interceptor.Fault
> at
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:116)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:333)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:355)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:319)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:72)[176:org.apache.cxf.cxf-rt-transports-http-jetty:2.7.0.redhat-610139]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1077)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1013)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.Server.handle(Server.java:368)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:943)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1004)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[93:org.eclipse.jetty.aggregate.jetty-all-server:8.1.9.v20130131]
> at java.lang.Thread.run(Thread.java:744)[:1.7.0_45]
> Caused by: org.apache.cxf.interceptor.Fault
> at
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:76)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> ... 22 more
> Caused by: java.lang.NullPointerException
> at
> org.apache.cxf.jaxrs.impl.tl.ThreadLocalProviders.getContextResolver(ThreadLocalProviders.java:50)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.locateMapper(JacksonJsonProvider.java:633)[245:jackson-jaxrs:1.9.10]
> at
> org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:413)[245:jackson-jaxrs:1.9.10]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBodyReader(JAXRSUtils.java:1280)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1231)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:782)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:741)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:263)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:103)[166:org.apache.cxf.cxf-rt-frontend-jaxrs:2.7.0.redhat-610139]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)[150:org.apache.cxf.cxf-api:2.7.0.redhat-610139]
> ... 21 more
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)