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

Freeman Fang resolved CXF-7029.
-------------------------------
       Resolution: Fixed
    Fix Version/s: 3.0.11
                   3.1.8
                   3.2.0

commit fix
http://git-wip-us.apache.org/repos/asf/cxf/commit/cacfe5c3 for master
http://git-wip-us.apache.org/repos/asf/cxf/commit/8c6b85a0 for 3.1.x-fixes 
branch
http://git-wip-us.apache.org/repos/asf/cxf/commit/914115fb for 3.0.x-fixes 
branch

> HttpAuthenticationFaultHandler cause java.lang.IllegalStateException: WRITER
> ----------------------------------------------------------------------------
>
>                 Key: CXF-7029
>                 URL: https://issues.apache.org/jira/browse/CXF-7029
>             Project: CXF
>          Issue Type: Bug
>            Reporter: Freeman Fang
>            Assignee: Freeman Fang
>             Fix For: 3.2.0, 3.1.8, 3.0.11
>
>
> although it works, it cause exception like
> {code}
> 09:07:50,506 | WARN  | qtp682010421-149 | PhaseInterceptorChain            | 
> 74 - org.apache.cxf.cxf-core - 3.0.4 | Interceptor for 
> {xxxxxxxxxxxxx}IncidentService has thrown exception, unwinding now
> java.lang.IllegalStateException: WRITER
>       at 
> org.eclipse.jetty.server.Response.getOutputStream(Response.java:667)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.apache.cxf.transport.http.AbstractHTTPDestination.flushHeaders(AbstractHTTPDestination.java:628)[96:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>       at 
> org.apache.cxf.transport.http.AbstractHTTPDestination.flushHeaders(AbstractHTTPDestination.java:597)[96:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>       at 
> org.apache.cxf.transport.http.AbstractHTTPDestination$WrappedOutputStream.onFirstWrite(AbstractHTTPDestination.java:773)[96:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>       at 
> org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:47)[74:org.apache.cxf.cxf-core:3.0.4]
>       at 
> com.ctc.wstx.io.UTF8Writer.flush(UTF8Writer.java:100)[68:woodstox-core-asl:4.4.1]
>       at 
> com.ctc.wstx.sw.BufferingXmlWriter.flush(BufferingXmlWriter.java:241)[68:woodstox-core-asl:4.4.1]
>       at 
> com.ctc.wstx.sw.BufferingXmlWriter.close(BufferingXmlWriter.java:214)[68:woodstox-core-asl:4.4.1]
>       at 
> com.ctc.wstx.sw.BaseStreamWriter._finishDocument(BaseStreamWriter.java:1419)[68:woodstox-core-asl:4.4.1]
>       at 
> com.ctc.wstx.sw.BaseStreamWriter.writeEndDocument(BaseStreamWriter.java:532)[68:woodstox-core-asl:4.4.1]
>       at 
> org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor$SoapOutEndingInterceptor.handleMessage(SoapOutInterceptor.java:303)[81:org.apache.cxf.cxf-rt-bindings-soap:3.0.4]
>       at 
> org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor$SoapOutEndingInterceptor.handleMessage(SoapOutInterceptor.java:290)[81:org.apache.cxf.cxf-rt-bindings-soap:3.0.4]
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)[74:org.apache.cxf.cxf-core:3.0.4]
>       at 
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:113)[74:org.apache.cxf.cxf-core:3.0.4]
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.wrapExceptionAsFault(PhaseInterceptorChain.java:365)[74:org.apache.cxf.cxf-core:3.0.4]
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:323)[74:org.apache.cxf.cxf-core:3.0.4]
>       at 
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)[74:org.apache.cxf.cxf-core:3.0.4]
>       at 
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:251)[96:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>       at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)[96:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>       at 
> .....
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:503)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:69)[93:org.ops4j.pax.web.pax-web-jetty:3.2.7]
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:240)[93:org.ops4j.pax.web.pax-web-jetty:3.2.7]
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:429)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:75)[93:org.ops4j.pax.web.pax-web-jetty:3.2.7]
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.Server.handle(Server.java:370)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:231)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:696)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:53)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[86:org.eclipse.jetty.aggregate.jetty-all-server:8.1.18.v20150929]
>       at java.lang.Thread.run(Thread.java:745)[:1.7.0_79]
> {code}
> This is caused by that we call the ServletResponse.getWriter() before we call 
> the ServletResponse.getOutputStream(), we should align the way to use the 
> ServletResponse



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

Reply via email to