从JSP发送文件到Servlet

时间:2013-01-22 11:33:45

标签: java jsp servlets

  

可能重复:
  How to upload files to server using JSP/Servlet?

我在jsp中编写了这段代码,将文件发送到Servlet:

<input type="file" name="inputFoto" id="inputFoto"/>

我的Servlet是:

{...
File fotoImg = (File) request.getAttribute("inputFoto");
byte[] foto = convertiInArrayByte(fotoImg);
..}

它不起作用。如何从JSP获取Servlet中的文件? 有人能帮我吗?也许文件的路径存在一些问题(在我的电脑上)!?!?

1 个答案:

答案 0 :(得分:4)

file类型的输入不是简单属性,它们是在请求的单独块中发送的。因此,您的HTTP请求中必须至少有两个部分。

因此,您必须使用Multipart Form Data 处理来解析文件。这里有很多例子,例如:

最常见的是Apache Commons Fileupload http://commons.apache.org/fileupload用于此目的。