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

Daniel Kulp resolved CXF-5318.
------------------------------

       Resolution: Invalid
    Fix Version/s: Invalid


Mentions the "out of the box" Logging interceptors work fine.   Not sure what 
would cause the exception and request for more information about it is 
unanswered. 

Would likely need a reproducible test case.

> "stream is closed" error when enabling LoggingInInterceptor on JaxWSClient
> --------------------------------------------------------------------------
>
>                 Key: CXF-5318
>                 URL: https://issues.apache.org/jira/browse/CXF-5318
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.7.6
>            Reporter: Andrew Vella
>             Fix For: Invalid
>
>
> I'm having a weird issue and cannot seem to get the bottom of it. Basically 
> need to log the soap XML being sent to a webservice and received (consumer). 
> I believe the correct approach to this is to use the out of the box 
> interceptors provided by Apache. These work fine however we have a particular 
> case where a method accepts a large amount of parameters/objects and returns 
> a large amount of parameters/objects which would obviously create a large 
> soap request/response xml. The soap request/response are always being printed 
> correctly however the below error is being thrown:
> Application configuration
> Spring config:
>     <jaxws:client id="serviceClient"
>                   serviceClass="com.services.stubs.ServiceAPI"
>                   address="${service.url}">
>         <jaxws:inInterceptors>
>             <ref bean="incomingInterceptor"/>
>         </jaxws:inInterceptors>
>         <jaxws:outInterceptors>
>             <ref bean="outgoingInterceptor"/>
>         </jaxws:outInterceptors>
>     </jaxws:client>
> My Interceptor classes:
> public class OutLoggingInterceptor extends LoggingOutInterceptor
> {
>     public OutLoggingInterceptor()
>     {
>         super(Phase.PRE_STREAM);
>     }
> }
> public class InLoggingInterceptor extends LoggingInInterceptor
> {
>     public InLoggingInterceptor()
>     {
>         super(Phase.RECEIVE);
>     }
> }
> Error being thrown:
> org.apache.cxf.interceptor.Fault: stream is closed
>       at 
> org.apache.cxf.interceptor.LoggingInInterceptor.logging(LoggingInInterceptor.java:167)
>  ~[cxf-api-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.interceptor.LoggingInInterceptor.handleMessage(LoggingInInterceptor.java:78)
>  ~[cxf-api-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
>  [cxf-api-2.7.6.jar:2.7.6]
>       at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:811) 
> [cxf-api-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1590)
>  [cxf-rt-transports-http-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1486)
>  [cxf-rt-transports-http-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1305)
>  [cxf-rt-transports-http-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:50)
>  [cxf-api-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:223) 
> [cxf-api-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) 
> [cxf-api-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:623) 
> [cxf-rt-transports-http-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
>  [cxf-api-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
>  [cxf-api-2.7.6.jar:2.7.6]
>       at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:541) 
> [cxf-api-2.7.6.jar:2.7.6]
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:474) 
> [cxf-api-2.7.6.jar:2.7.6]
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:377) 
> [cxf-api-2.7.6.jar:2.7.6]
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:330) 
> [cxf-api-2.7.6.jar:2.7.6]
>       at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) 
> [cxf-rt-frontend-simple-2.7.6.jar:2.7.6]
>       at 
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:134) 
> [cxf-rt-frontend-jaxws-2.7.6.jar:2.7.6]
> Not sure if this is the correct place to post this so my apologies in advance.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to