上载文件停止,套接字上读取了意外的EOF异常

有时,当我尝试在远程vps上上传文件时,出现此异常(上传过程停止在60%)

06-Jan-2016 11:59:36.801 SEVERE [http-nio-54000-exec-9] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [mvc-dispatcher] in context with path [] threw exception [Request processing failed;

nested exception is org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request;

nested exception is org.apache.commons.fileupload.FileUploadBase$IOFileUploadException: Processing of multipart/form-data request failed. Unexpected EOF read on the socket]

with root cause

java.io.EOFException: Unexpected EOF read on the socket

而在Google Chrome连接丢失,就像服务器关闭,我得到ERR_CONNECTION_ABORTED

我在springmvc中上传这样的文件

public void save_file(MultipartFile upfile , String path){

try {

File fichier = new File( path ) ;

byte[] bytes = upfile.getBytes();

BufferedOutputStream stream = new BufferedOutputStream(new FileOutputStream( fichier ));

stream.write(bytes);

stream.close();

System.out.println( "You successfully uploaded " + upfile.getOriginalFilename() + "!" );

} catch (Exception e) {

System.out.println( "You failed to upload " + upfile.getOriginalFilename() + " => " + e.getMessage() ); ;

}

}

我的控制器:

@RequestMapping(value = "/administration/upload", method = RequestMethod.POST)

public String Upload_AO_journal(

@ModelAttribute UploadForm uploadForm,

Model map , HttpServletRequest request, HttpSession session ) throws ParseException, UnsupportedEncodingException {

我的豆

public class UploadForm {

...

public MultipartFile scan;

那么如何解决这个问题呢?

回答:

您尝试过流吗?

Jsp代码:

<form method="POST" onsubmit=""

ACTION="url?${_csrf.parameterName}=${_csrf.token}" ENCTYPE="multipart/form-

data">

控制器:

 @RequestMapping(

value = "url", method = RequestMethod.POST

)

public void uploadFile(

@RequestParam("file") MultipartFile file

) throws IOException {

InputStream input = upfile.getInputStream();

Path path = Paths.get(path);//check path

OutputStream output = Files.newOutputStream(path);

IOUtils.copy(in, out); //org.apache.commons.io.IOUtils or you can create IOUtils.copy

}

Spring 4.0和Spring Security对我有用。

其次,您应该检查http连接是否超时。Chrome浏览器不支持该配置。因此,您可以使用firefox并在此处关注http://morgb.blogspot.com.es/2014/05/firefox-29-and-

http-response-

timeout.html。

以上是 上载文件停止,套接字上读取了意外的EOF异常 的全部内容, 来源链接: utcz.com/qa/435164.html

回到顶部