アプリケーションでファイルをアップロードしようとすると問題が発生します。
アプリケーション サーバーは Glassfish 3.1.2.2 です。
サーバー側 Spring MVC を使用しています。だから私はで宣言しましたbeans.xml
:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>
コントローラーには、次のものがあります。
@RequestMapping(value = "/processUpload", method = RequestMethod.POST)
@ResponseBody
public Object processUpload(MultipartHttpServletRequest request) {
... do something with request.getFiles(...); ...
}
クライアント側では、私は使用していXMLHttpRequest
ます:
xhr.open('POST', url, true);
var formData = new FormData();
formData.append('something', ...);
formData.append('file', file);
小さなファイルで動作していますが、大きなファイルでは、この例外メッセージが表示され続けます:
Stream ended unexpectedly
私が試したこと:
max-post-size-bytes="0"
ormax-post-size-bytes="1073741824"
(= 1go / test-file = 300mo) domain.xml- web-core.jar をhttps://java.net/jira/browse/GLASSFISH-18444で提供されているものに変更します
- commons-io、commons-fileuploadをglassfish/libsのものに変更します
- Web コアを個別に変更する / コモンズ ライブラリを個別に変更する
<bean id="multipartResolver" class="org.springframework.web.multipart.support.StandardServletMultipartResolver">
commons-fileupload + の代わり<multipart-config>
に web.xmlで使用
前もって感謝します、
スモーキー