【发布时间】:2013-12-27 13:34:50
【问题描述】:
我正在尝试使用 servlet 上传图像,但我无法做到。服务器控制台没有错误。
这是我的 Servlet 代码
if (ServletFileUpload.isMultipartContent(request)) {
try {
List<FileItem> multiparts = new ServletFileUpload(
new DiskFileItemFactory()).parseRequest(request);
System.out.println(items); // this is printed as empty list
for (FileItem item : multiparts) {
System.out.print(DIR);
if (!item.isFormField()) {
String name = new File(item.getName()).getName();
item.write(new File(DIR + "\\" + name));
}
}
} catch (Exception ex) {
System.out.println(ex);
request.getRequestDispatcher("/message/success/Failure.jsp").forward(request, response);
}
} else {
request.getRequestDispatcher("/message/success/NotSupported.jsp").forward(request, response);
}
我的 HTML
<form action="ChangeAvtar" method="post">
<a onclick="document.getElementById('file').click()" >Edit</a>
<input type="file" id="file" />
<input type="submit">
</form>
我能找到的原因是 items 列表是空的,所以它没有进入 for 循环,但不知道为什么。
谢谢。
【问题讨论】:
-
看看这个链接对你有没有帮助 - stackoverflow.com/questions/13881272/…
标签: html servlets file-upload