Java Glassfish 3.1.2.2文件上载
我尝试在应用程序中上载文件时遇到问题 应用服务器是Glassfish 3.1.2.2 服务器端我正在使用SpringMVC。所以我在Java Glassfish 3.1.2.2文件上载,java,javascript,spring,apache,glassfish,Java,Javascript,Spring,Apache,Glassfish,我尝试在应用程序中上载文件时遇到问题 应用服务器是Glassfish 3.1.2.2 服务器端我正在使用SpringMVC。所以我在beans.xml中声明: <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/> 在客户端,我使用的是XMLHttpRequest: xhr.open('POST', url, true); v
beans.xml
中声明:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>
在客户端,我使用的是XMLHttpRequest
:
xhr.open('POST', url, true);
var formData = new FormData();
formData.append('something', ...);
formData.append('file', file);
它处理的是小文件,但处理的是大文件,它不断向我发出以下异常消息:
Stream ended unexpectedly
我尝试的是:
- domains.xml中的
或max post size bytes=“0”
(=1go/test file=300mo)max post size bytes=“1073741824”
- 将web-core.jar更改为中提供的web-core.jar
- 将commons io、commons文件上载更改为glassfish/libs中的文件
- 独立更改web核心/独立更改公共LIB
- 在web.xml中使用
而不是commons fileupload+
烟雾最后,我找到了一个解决方案:
$.ajax({
type : 'POST',
url : '/processUpload',
data : formData,
dataType : 'text',
cache : false,
processData : false,
contentType : false,
xhr : function () {
... progress things ...
}
});
而不是使用本机XHR
与以下机构合作:
org.springframework.web.multipart.commons.commons多部分解析器
- 最后一个公用io/公用文件上载库
- 默认glassfish web-core.jar
$.ajax({
type : 'POST',
url : '/processUpload',
data : formData,
dataType : 'text',
cache : false,
processData : false,
contentType : false,
xhr : function () {
... progress things ...
}
});