[
https://issues.apache.org/jira/browse/CXF-3300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guido Reiff updated CXF-3300:
-----------------------------
Description:
Large binary data is streamed to server using MTOM and stored to an Oracle 11g
Database using its JDBC-Driver. When the client stops uploading (tested by kill
of process). In the development environment using a current OpenSuse Version
CXF throws org.apache.cxf.interceptor.Fault out of
org.apache.cxf.transport.http.AbstractHTTPDestination.cacheInput(line 490)
caused by "IOException: Invalid chunk header". As it is a RuntimeException the
database transaction will be rolled back. Thats the expected behavior.
The same szenario in target environment using identical (copied) JBoss with
application code fails as there occures an ArrayIndexOutOfBoundsException at
org.apache.tomcat.util.buf.ByteChunk.substract(line 429) ...
org.apache.cxf.attachement.MimeBodyPartInputStream.read(line 97) ...
org.apache.cxf.transport.http.AbstractHTTPDestination.cacheInput(line 488). As
it is not a RuntimeException the transaction is not rolled back.
So my questions are:
1) How can there be a difference in the two environments?
2) It's a bug, that only IOExceptions are thrown as
org.apache.cxf.interceptor.Fault at AbstractHTTPDestination(line 490), isn't
it? (the code of that method has not changed in Version 2.3.1)
was:
Large binary date is streamed to server using MTOM and stored to an Oracle 11g
Database using its JDBC-Driver. When the client stops uploading (tested by kill
of process). In the development environment using a current OpenSuse Version
CXF throws org.apache.cxf.interceptor.Fault out of
org.apache.cxf.transport.http.AbstractHTTPDestination.cacheInput(line 490)
caused by "IOException: Invalid chunk header". As it is a RuntimeException the
database transaction will be rolled back. Thats the expected behavior.
The same szenario in target environment using identical (copied) JBoss with
application code fails as there occures an ArrayIndexOutOfBoundsException at
org.apache.tomcat.util.buf.ByteChunk.substract(line 429) ...
org.apache.cxf.attachement.MimeBodyPartInputStream.read(line 97) ...
org.apache.cxf.transport.http.AbstractHTTPDestination.cacheInput(line 488). As
it is not a RuntimeException the transaction is not rolled back.
So my questions are:
1) How can there be a difference in the two environments?
2) It's a but, that only IOExceptions are thrown as
org.apache.cxf.interceptor.Fault at AbstractHTTPDestination(line 490), isn't
it? (the code of that method has not changed in Version 2.3.1)
> Missing Fault at kill of streaming client, instead
> ArrayIndexOutOfBoundsExcetpion occurs
> ----------------------------------------------------------------------------------------
>
> Key: CXF-3300
> URL: https://issues.apache.org/jira/browse/CXF-3300
> Project: CXF
> Issue Type: Bug
> Components: Core, Transports
> Affects Versions: 2.2.9
> Environment: JBossAS 5.1 GA on OpenSuse/Suse Linux Enterprise Server,
> JDK 1.6.0_22 (64-Bit), CXF within jbossws-cxf-3.3.1.GA
> Reporter: Guido Reiff
>
> Large binary data is streamed to server using MTOM and stored to an Oracle
> 11g Database using its JDBC-Driver. When the client stops uploading (tested
> by kill of process). In the development environment using a current OpenSuse
> Version CXF throws org.apache.cxf.interceptor.Fault out of
> org.apache.cxf.transport.http.AbstractHTTPDestination.cacheInput(line 490)
> caused by "IOException: Invalid chunk header". As it is a RuntimeException
> the database transaction will be rolled back. Thats the expected behavior.
> The same szenario in target environment using identical (copied) JBoss with
> application code fails as there occures an ArrayIndexOutOfBoundsException at
> org.apache.tomcat.util.buf.ByteChunk.substract(line 429) ...
> org.apache.cxf.attachement.MimeBodyPartInputStream.read(line 97) ...
> org.apache.cxf.transport.http.AbstractHTTPDestination.cacheInput(line 488).
> As it is not a RuntimeException the transaction is not rolled back.
> So my questions are:
> 1) How can there be a difference in the two environments?
> 2) It's a bug, that only IOExceptions are thrown as
> org.apache.cxf.interceptor.Fault at AbstractHTTPDestination(line 490), isn't
> it? (the code of that method has not changed in Version 2.3.1)
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira