遇到此例外的原因是什么:
org.apache.commons.fileupload.FileUploadException:
Processing of multipart/form-data request failed. Stream ended unexpectedly
答案 0 :(得分:12)
主要原因是底层套接字已关闭或重置。最常见的原因是用户在文件完全上载之前关闭了浏览器。或者上传过程中互联网被中断。无论如何,服务器端代码应该能够优雅地处理这个异常。
答案 1 :(得分:3)
自从我处理该库以来已经有一年了,但如果我没记错,如果有人试图上传文件,然后更改浏览器URL(点击链接,打开书签等),那么你可以得到它异常。
答案 2 :(得分:2)
如果您使用FileUpload从Flash接收上传,则可能会出现此异常。
至少从版本8开始,Flash包含一个已知的错误:它产生的多部分流被破坏,因为最后的边界不包含后缀“ - ”,这应该表明,没有更多的项目跟随。因此,FileUpload等待下一个项目(它没有得到)并抛出异常。
有一种解决方法建议使用流API并捕获异常。
catch (MalformedStreamException e) {
// Ignore this
}
有关详细信息,请参阅https://commons.apache.org/proper/commons-fileupload/faq.html#missing-boundary-terminator