I hit other problems on trunk that I filed in a JIRA.

On Mon, Nov 14, 2011 at 12:06 PM, Sergey Beryozkin <[email protected]> wrote:
> Hi Benson
>
> On 14/11/11 15:33, Benson Margulies wrote:
>>
>> Sergey,
>>
>> I'm going to build you a testcase for this
>
> I hope it is sorted out now, I was not really sure though how to update a
> Jackson based test to reproduce this issue, please try the trunk snapshot
> when you get a chance; I just updated the code to check for mappers before
> wrapping IOExceptions, so it should fix it
>
>> and my 'disappearing JSON'
>> mystery.
>
> Please do, thanks
> Sergey
>
>> But I got distracted by building an archetype for JAX-RS
>> first. So it will be another day or two.
>>
>> --benson
>>
>>
>> On Mon, Nov 14, 2011 at 4:36 AM, Sergey Beryozkin<[email protected]>
>>  wrote:
>>>
>>> I think it is a bug, as at the moment all the exceptions thrown from
>>> MessageBodyReaders are wrapped in WebApplicationException, without giving
>>> a
>>> chance to custom IOException handlers, I think we had a similar query
>>> recently...
>>>
>>> You can provide your own WebApplicationException mapper and get to the
>>> cause
>>> of it in that mapper, but I agree that a fix is needed anyway,
>>>
>>> Sergey
>>>
>>> On 13/11/11 01:12, Benson Margulies wrote:
>>>>
>>>> I seem to have run into a problem with exception providers in 2.5.0.
>>>> Am I confused? Should I file a JIRA?
>>>>
>>>> In my context XML:
>>>>
>>>>    <jaxrs:server id="services" address="/">
>>>>      <jaxrs:inInterceptors>
>>>>      <ref bean="logInbound"/>
>>>>     </jaxrs:inInterceptors>
>>>>     <jaxrs:serviceBeans>
>>>>       <ref bean="document-service-impl" />
>>>>     </jaxrs:serviceBeans>
>>>>     <jaxrs:providers>
>>>>         <bean class="org.codehaus.jackson.jaxrs.JacksonJsonProvider"/>
>>>>         <bean class="com.basistech.rlp.ws.EofExceptionProvider"/>
>>>>     </jaxrs:providers>
>>>>     </jaxrs:server>
>>>>
>>>> Yet:
>>>>
>>>> 2011-11-12 20:09:24,435 ["http-bio-15000"-exec-1] ERROR
>>>> org.apache.cxf.jaxrs.utils.JAXRSUtils - Error deserializing input
>>>> stream into target class PlainTextInputOptions, content type :
>>>> application/json
>>>> 2011-11-12 20:09:24,437 ["http-bio-15000"-exec-1] WARN
>>>> org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper -
>>>> WebApplicationException has been caught : No content to map to Object
>>>> due to end of input
>>>> 2011-11-12 20:09:24,438 ["http-bio-15000"-exec-1] DEBUG
>>>> org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper - No content
>>>> to map to Object due to end of input
>>>> javax.ws.rs.WebApplicationException: java.io.EOFException: No content
>>>> to map to Object due to end of input
>>>>        at
>>>>
>>>> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1040)
>>>>        at
>>>>
>>>> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:612)
>>>>        at
>>>>
>>>> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:577)
>>>>        at
>>>>
>>>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:236)
>>>>        at
>>>>
>>>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:88)
>>>>        at
>>>>
>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:123)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:206)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:213)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:154)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:126)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:184)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:112)
>>>>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
>>>>        at
>>>>
>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:163)
>>>>        at
>>>>
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
>>>>        at
>>>>
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>>        at
>>>>
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
>>>>        at
>>>>
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
>>>>        at
>>>>
>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
>>>>        at
>>>>
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
>>>>        at
>>>>
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
>>>>        at
>>>>
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>>>        at
>>>>
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
>>>>        at
>>>>
>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
>>>>        at
>>>>
>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
>>>>        at
>>>>
>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:182)
>>>>        at
>>>>
>>>> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
>>>>        at
>>>>
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>>        at
>>>>
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>>        at java.lang.Thread.run(Thread.java:680)
>>>> Caused by: java.io.EOFException: No content to map to Object due to end
>>>> of
>>>> input
>>>>        at
>>>>
>>>> org.codehaus.jackson.map.ObjectMapper._initForReading(ObjectMapper.java:2437)
>>>>        at
>>>> org.codehaus.jackson.map.ObjectMapper._readValue(ObjectMapper.java:2370)
>>>>        at
>>>> org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1166)
>>>>        at
>>>>
>>>> org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:410)
>>>>        at
>>>>
>>>> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1032)
>>>>        ... 30 more
>>>
>>>
>
>

Reply via email to