大家帮我看看 冗余的代码就不贴了UploadJsp.jsp:<form action="UploadServlet" method="post" enctype="multipart/form-data">
<input type="file"><input type="text"><input type="submit" value="submit">
</form>
UploadServlet.java:
public class UploadServlet extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {// Check that we have a file upload request
boolean isMultipart = FileUploadBase.isMultipartContent(request);
PrintWriter pw = response.getWriter();
pw.println(isMultipart);
// Create a factory for disk-based file items
DiskFileItemFactory factory = new DiskFileItemFactory();// Set factory constraints
factory.setSizeThreshold(1024);
File file = new File("e:\\temp");
factory.setRepository(file);
// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);
// Set overall request size constraint
upload.setSizeMax(1024*1024);
try{
pw.println("parsing...");
// Parse the request
List items = upload.parseRequest(request);
//问题点==================================================
//items里面是空的 (上传的时候有选文件)
//========================================================
pw.println("parse over");
Iterator iter = items.iterator();
pw.println(iter.hasNext());
while(iter.hasNext()){
FileItem item = (FileItem)iter.next();
// Process a regular form field
if(item.isFormField ()){
String name = item.getFieldName();
String value = item.getString();
}else{
String fieldName = item.getFieldName();
String fileName = item.getName();
String contentType = item.getContentType();
boolean isInMemory = item.isInMemory();
long sizeInBytes = item.getSize();
pw.println(fieldName);
pw.println(fileName);
pw.println(contentType);
pw.println(isInMemory);
pw.println(sizeInBytes);
}
}
}catch(FileUploadException e){
e.printStackTrace();
}catch(Exception ex){
ex.printStackTrace();
}
}
}
<input type="file"><input type="text"><input type="submit" value="submit">
</form>
UploadServlet.java:
public class UploadServlet extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {// Check that we have a file upload request
boolean isMultipart = FileUploadBase.isMultipartContent(request);
PrintWriter pw = response.getWriter();
pw.println(isMultipart);
// Create a factory for disk-based file items
DiskFileItemFactory factory = new DiskFileItemFactory();// Set factory constraints
factory.setSizeThreshold(1024);
File file = new File("e:\\temp");
factory.setRepository(file);
// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);
// Set overall request size constraint
upload.setSizeMax(1024*1024);
try{
pw.println("parsing...");
// Parse the request
List items = upload.parseRequest(request);
//问题点==================================================
//items里面是空的 (上传的时候有选文件)
//========================================================
pw.println("parse over");
Iterator iter = items.iterator();
pw.println(iter.hasNext());
while(iter.hasNext()){
FileItem item = (FileItem)iter.next();
// Process a regular form field
if(item.isFormField ()){
String name = item.getFieldName();
String value = item.getString();
}else{
String fieldName = item.getFieldName();
String fileName = item.getName();
String contentType = item.getContentType();
boolean isInMemory = item.isInMemory();
long sizeInBytes = item.getSize();
pw.println(fieldName);
pw.println(fileName);
pw.println(contentType);
pw.println(isInMemory);
pw.println(sizeInBytes);
}
}
}catch(FileUploadException e){
e.printStackTrace();
}catch(Exception ex){
ex.printStackTrace();
}
}
}
解决方案 »
- 有java FX的技术资料吗?
- 开发的系统能同时支持SQL sever2000/2005和Oracle 数据库
- Can't sendRedirect 出现频率很低,每天访问会有10w,该异常大概有七八百次,用户反映感觉不到异常的存在,很怪异,有什么可能的原因呢?求助各位大侠
- JSP中的LINK按钮怎么非活性
- jsp 操作数据库,把SQL Server数据表以及里面的数据全部导出生产.sql文件。
- 在struts的action中得到了BufferedImage对象,我要如何将其显示在jsp页面上呢?
- 急 关于xml的问题!!!!
- jsp程序不能显示图像?
- applet怎么读取宿主服务器上的文件
- 怎样利用word打印表格
- 求助:有关页面刷新问题(有点难)
- JSP 动态查询选择要怎么实现
exception javax.servlet.ServletException: Servlet execution threw an exception
root cause java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream
org.apache.commons.fileupload.disk.DiskFileItemFactory.createItem(DiskFileItemFactory.java:179)
org.apache.commons.fileupload.FileUploadBase.createItem(FileUploadBase.java:500)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:367)
org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(ServletFileUpload.java:116)
ServletTest.UploadServlet.doPost(UploadServlet.java:59)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)不太明白是什么问题,望赐教