[ 
https://issues.apache.org/jira/browse/CXF-5742?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Kulp resolved CXF-5742.
------------------------------
       Resolution: Cannot Reproduce
    Fix Version/s: Invalid
         Assignee: Daniel Kulp


Not something we could reproduce, but also doesn't really look like a CXF 
issue.   The Content-Length header is set, but there doesn't seem to be any 
data received in the content.   That would imply either an issue in Jetty or in 
the load balancer.

> Http Request Payload missing from Apache HTTP Server to Embedded Jetty server
> -----------------------------------------------------------------------------
>
>                 Key: CXF-5742
>                 URL: https://issues.apache.org/jira/browse/CXF-5742
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 2.7.10
>         Environment: CXF 2.7.10
> Unix platform and JDK 7
> Container being used - Jetty 8
>            Reporter: sai sri harsha gudladona
>            Assignee: Daniel Kulp
>            Priority: Critical
>             Fix For: Invalid
>
>
> Hello,
> We have a REST web service application based on Spring and CXF.
> The client can send a XML request and receive the response, the interceptors 
> are all fine, and authentication works fine too.
> But We intermittently observing the Request Payload being missed on the Jetty 
> 8 server when tested under a considerable load. 
> The Apache HTTP Server(two Apache HTTP servers) is under a load Balancer and 
> the load is further distributed to 4 Jetty Servers.  
> We observed "Payload:" header printed in the server logs for the requests 
> that go through successfully. For the requests that failed no Payload Header 
> was observed to be printed in the jetty server Logs. 
> Below are the details of the Request and Response.
> Request:
> --------------------------------------
> May 13, 2014 9:34:09 PM org.apache.cxf.interceptor.LoggingInInterceptor
> INFO: Inbound Message
> ----------------------------
> ID: 5234
> Address: 
> https://qa.p.****.com/rest/1/07/Account/urn:****:accountid:org:dece:F94FCC3565718056E0401F0A3E997368/User
> Encoding: UTF-8
> Http-Method: POST
> Content-Type: application/xml
> Headers: {Accept=[*/*], Cache-Control=[no-cache], connection=[Keep-Alive], 
> Content-Length=[1252], content-type=[application/xml], 
> cookie=[JSESSIONID=oovyjh0hjty6l16xgbbo8eaq.api4], ****_header=[ 
> t=1400016849110245 U3KP0QofmJEAAA2eCmgAAAEt urn:dece:org:org:dece:700700 
> (null)], ****_request=[Unique_ID=U3KP0QofmJEAAA2eCmgAAAEt], 
> dynaTrace=[NA=POST_UserCreate;PC=UserCreate;VU=431;ID=1400016848618], 
> host=[qa.p.****.com:7003], SSL_CLIENT_NODEID=[urn:dece:org:org:dece:700700], 
> user-agent=[Jakarta Commons-HttpClient/3.1], VHOST=[provision]}
> --------------------------------------
> Exception:
> May 13, 2014 9:34:09 PM org.apache.cxf.jaxrs.provider.AbstractJAXBProvider 
> handleExceptionStart
> WARNING: javax.xml.bind.UnmarshalException
>  - with linked exception:
> [com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
>  at [row,col {unknown-source}]: [1,0]]
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:436)
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:372)
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:342)
>         at 
> org.apache.cxf.jaxrs.provider.JAXBElementProvider.unmarshalFromInputStream(JAXBElementProvider.java:272)
>         at 
> org.apache.cxf.jaxrs.provider.JAXBElementProvider.doUnmarshal(JAXBElementProvider.java:225)
>         at 
> org.apache.cxf.jaxrs.provider.JAXBElementProvider.readFrom(JAXBElementProvider.java:184)
>         at 
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBodyReader(JAXRSUtils.java:1280)
>         at 
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1231)
>         at 
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:782)
>         at 
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:741)
>         at 
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:254)
>         at 
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:90)
>         at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)
>         at 
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
>         at 
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239)
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:248)
>         at 
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:222)
>         at 
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:153)
>         at 
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:167)
>         at 
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286)
>         at 
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
>         at 
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262)
>         at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)
>         at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1496)
>         at 
> biz.neustar.dece.log.DeceLogRequestInterceptor.doFilter(DeceLogRequestInterceptor.java:352)
>         at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1484)
>         at 
> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
>         at 
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:108)
>         at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1476)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
>         at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
>         at 
> org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)
>         at 
> org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
>         at java.lang.Thread.run(Thread.java:744)
> Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
>  at [row,col {unknown-source}]: [1,0]
>         at 
> com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:677)
>         at 
> com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2139)
>         at 
> com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2045)
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1134)
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:164)
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:370)
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:342)
>         at 
> org.apache.cxf.jaxrs.provider.JAXBElementProvider.unmarshalFromInputStream(JAXBElementProvider.java:272)
>         at 
> org.apache.cxf.jaxrs.provider.JAXBElementProvider.doUnmarshal(JAXBElementProvider.java:225)
>         at 
> org.apache.cxf.jaxrs.provider.JAXBElementProvider.readFrom(JAXBElementProvider.java:184)
>         ... 47 more
> Response:
> May 13, 2014 9:34:09 PM org.apache.cxf.interceptor.LoggingOutInterceptor
> INFO: Outbound Message
> ---------------------------
> ID: 5234
> Response-Code: 500
> Content-Type: application/xml
> Headers: {Connection=[close], x-Transaction-Info=[t=1400016849 
> U3KP0QofmJEAAA2eCmgAAAEt urn:****:org:org:dece:700700 10.31.153.241], 
> Date=[Tue, 13 May 2014 21:34:09 GMT]}
> Payload: <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <ErrorList xmlns="http://www.*****.org/schema/****/**/****"; 
> xmlns:ns3="http://www.w3.org/2000/09/xmldsig#"; 
> xmlns:ns4="http://www.w3.org/2001/04/xmlenc#";>
>     <Error ErrorID="urn:****:errorid:org:dece:InternalServerError">
>         <Reason Language="en">An internal server error occurred.</Reason>
>         
> <OriginalRequest>https://qa.p.****.com/rest/1/07/Account/urn:****:accountid:org:dece:F94FCC3565718056E0401F0A3E997368/User</OriginalRequest>
>         
> <ErrorLink>https://qa.q.****.com:7003/rest/1/07/error/en/ErrorList.html#InternalServerError</ErrorLink>
>     </Error>
> </ErrorList>
> --------------------------------------
> As we observe this issue intermittently, at this moment we don't have a 
> consistent way to reproduce and debug this issue. Please help us resolve this 
> issue.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to