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

Salgado, Ignacio updated CXF-2506:
----------------------------------

    Attachment: image001.gif

Hi,

We are having the same issue in our code but we don't know how to avoid this:

- When the request data is larger than 64K the handleMessage method from 
SoapInInterceptor is executed twice. In the second execution of the method it 
throws the stream closed exception.
- If the request data is smaller than 64K the handleMessage method from 
SoapInInterceptor is executed only once (for incoming data).
- We can avoid this by setting a large threshold  but we don't like the idea, 
since it won't attack the root cause.

Caused by: java.io.IOException: Stream closed
    at java.io.BufferedInputStream.getInIfOpen(BufferedInputStream.java:145)
    at java.io.BufferedInputStream.available(BufferedInputStream.java:386)
    at java.io.FilterInputStream.available(FilterInputStream.java:169)
    at org.apache.cxf.helpers.IOUtils.copy(IOUtils.java:98)
    at org.apache.cxf.helpers.IOUtils.copy(IOUtils.java:75)
    at 
com.aa.cs.ws.interceptors.SoapInInterceptor.handleMessage(SoapInInterceptor.java:126)
    at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)

Can you give us more information about this.

Thanks in advance,


Ignacio Salgado
Technical Leader, Best Shore Application Services
Hewlett-Packard Company

+54 351 554 0528 / Tel
+54 9351 317 8121 / Mobile
[email protected]<mailto:[email protected]> / Email
7050 Av. La Voz del Interior
Córdoba, X5008HLF
Argentina

[cid:[email protected]]<http://www.hp.com/>

Please consider the environment before printing this email.



> LoggingInInterceptor called twice if message is larger than 64 kb (when 
> CachedOutStream writes to tempfile)
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-2506
>                 URL: https://issues.apache.org/jira/browse/CXF-2506
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.1.5
>         Environment: Windows
>            Reporter: Laxmi Deepika Vadapalli
>         Attachments: image001.gif, java_first_jaxws.tar.gz
>
>
> I have my own SELoggingInterceptor. But it is same as LoggingInInterceptor 
> code with no difference.
> I see that when message is larger than 64kb i.e. when CachedOutputStream 
> write to temp file, this interceptor is called twice.
> First time, I process the message and second time I get Stream is closed 
> Exception when I try to copy Message,content (InputStream) to 
> CachedOutputStream.
> I tried printing the interceptor chain and I see my interceptor only once.
> It happens only with larger messages with CXF 2.1.5.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to