ServletFileUpload sfupload= new ServletFileUpload(factory);
List fileItems = sfupload.parseRequest(request);
而这个fileItems老是为空啊,查了一下午才知道是FilterDispatcher 拦截器作的怪,好像改到了request里的内容
如果项目中摘除Struts2或者不让<url-pattern>/*</url-pattern>就可以正常工作,现在的问题是摘除Struts2和/* 有什么办法能够解决啊,论坛里的高手能不能提供点好点的解决方法,比如:改FilterDispatcher 里的东东,或者其它的好点的解决方案
List fileItems = sfupload.parseRequest(request);
而这个fileItems老是为空啊,查了一下午才知道是FilterDispatcher 拦截器作的怪,好像改到了request里的内容
如果项目中摘除Struts2或者不让<url-pattern>/*</url-pattern>就可以正常工作,现在的问题是摘除Struts2和/* 有什么办法能够解决啊,论坛里的高手能不能提供点好点的解决方法,比如:改FilterDispatcher 里的东东,或者其它的好点的解决方案
解决方案 »
- struts2 tiles 和ssl 同时使用
- ssh整合 配置报错 请各位ggjj帮忙看看~!在线等待
- 关于java.util.Timer的TimerTask的cancel问题
- 分享你在java编程中程序性能优化经验!100分开撒啦!
- ant怎样能遇到编译错误时,继续执行。有三个java文件,其中有两个是能正确编译的,但有一个文件有错误,导致全编译不出来。
- TOMCAT连接池问题(解决问题200分相送)
- 高手急救!Jbuilder2005下用AXIS实现运行于WEBLOGIC8下的服务问题?
- iReport多页报表问题(如含有封面)
- WebService客户端问题?
- 我把一些JAVA代码放到了数据库,从数据库里读出来怎样运行这段代码?
- 关于hibernate: the content of element type "id" must match "(meta*,column*,type?generator?)".
- 关于EXT TREENODE BEFOREEXPAND问题
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
里面的/*改成/*.action然后用普通的servlet代替action做上传处理。
这是我做的一个上传:红色部分(uploadFile)是对应的jsp页面上传控件的id。使用上传必须有以下几个步骤:
一、在项目中添加commons-fileupload-1.x.x.jar、commons-io-1.x.x.jar两个包(你懂得!)。
二、把页面中form表单的enctype属性设置为:”multipart/form-data”,并设置method属性值为:post。否则不会编译成功的。
三、便是在action中编写以下代码:
private File uploadFile; //得到上传的文件
private String uploadFileContentType; //得到文件的类型
private String uploadFileFileName; //得到上传文件名称
public File getUploadFile() {
return uploadFile;
}
public void setUploadFile(File uploadFile) {
System.out.println("文件"+uploadFile);
this.uploadFile = uploadFile;
}
public String getUploadFileContentType() {
return uploadFileContentType;
}
public void setUploadFileContentType(String uploadFileContentType) {
this.uploadFileContentType = uploadFileContentType;
}
public String getUploadFileFileName() {
return uploadFileFileName;
}
public void setUploadFileFileName(String uploadFileFileName) {
this.uploadFileFileName = uploadFileFileName;
}
/**
* @return
*/
public String uploadFile() throws Exception {
//System.out.println("进来了!");
// TODO Auto-generated method stub
String realpath=ServletActionContext.getServletContext().getRealPath("/images");
System.out.println("上传文件名称:"+uploadFileFileName);
//自定义上传文件名称
uploadFileFileName="测试哈"+uploadFileFileName.substring(uploadFileFileName.lastIndexOf("."));
System.out.println("上传文件类型:"+uploadFileContentType);
System.out.println("要上传的路径:"+realpath);
File file=new File(realpath);
if(!file.exists())file.mkdirs();
FileUtils.copyFile(uploadFile, new File(file,uploadFileFileName));
return "sc";
}