You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Rob Smart (JIRA)" <ji...@apache.org> on 2012/07/09 11:50:34 UTC
[jira] [Created] (FILEUPLOAD-211) [fileupload] fails with
transfer-encoding: chunked when multi-part file section includes chunked
data
Rob Smart created FILEUPLOAD-211:
------------------------------------
Summary: [fileupload] fails with transfer-encoding: chunked when multi-part file section includes chunked data
Key: FILEUPLOAD-211
URL: https://issues.apache.org/jira/browse/FILEUPLOAD-211
Project: Commons FileUpload
Issue Type: Bug
Affects Versions: 1.2.2
Environment: Tomcat 7, java 1.6, osx
Reporter: Rob Smart
Priority: Minor
When performing multi-part file upload using chunked data, if a multi-part section includes separate data chunks it is not correctly parsed and causes FileUpload to throw "MalformedStreamException: Stream ended unexpectedly"
Having chunked content within a multi-part boundaries is as far as I am aware valid.
The reason my client has chunked content within file boundaries is that an audio file is uploaded as it is being recorded.
Example with chunked data within file boundary
POST /UploadServlet HTTP/1.1
User-Agent: test
Host: 192.168.1.2:9080
Connection: keep-alive
Transfer-Encoding: chunked
Content-Type:multipart/form-data; boundary=----WebKitFormBoundarykhPSttlPFVKSMhff
99
------WebKitFormBoundarykhPSttlPFVKSMhff
Content-Disposition: form-data; name="file"; filename="testfaces.wav"
Content-Type: application/octet-stream
5
AAAAA
5
AAAAA
5
AAAAA
5
AAAAA
2a
------WebKitFormBoundarykhPSttlPFVKSMhff--
0
Exception
org.apache.commons.fileupload.MultipartStream$MalformedStreamException: Stream ended unexpectedly
at org.apache.commons.fileupload.MultipartStream.readHeaders(MultipartStream.java:538)
at org.apache.commons.fileupload.FileUploadBase$FileItemIteratorImpl.findNextItem(FileUploadBase.java:999)
at org.apache.commons.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:965)
at org.apache.commons.fileupload.FileUploadBase.getItemIterator(FileUploadBase.java:331)
at org.apache.commons.fileupload.servlet.ServletFileUpload.getItemIterator(ServletFileUpload.java:148)
at com.ibm.cio.StreamedUploadServlet.doPost(StreamedUploadServlet.java:75)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira