commons.fileupload.servlet.ServletFileUpload
中 使用struts1 时候 在parseRequest(request)中 会一直为空。。
查了下消息 是说此时的request是被s1重构过的。。
那么各位达达是如何处理这个问题的?? 当不使用form收集的话 ServletFileUpload的数据可以进行上传。还有s1 有办法获得原生的request吗?没有被s1处理之前的。。
另外 如果是s2遇到这个问题的话 该如何处理??
中 使用struts1 时候 在parseRequest(request)中 会一直为空。。
查了下消息 是说此时的request是被s1重构过的。。
那么各位达达是如何处理这个问题的?? 当不使用form收集的话 ServletFileUpload的数据可以进行上传。还有s1 有办法获得原生的request吗?没有被s1处理之前的。。
另外 如果是s2遇到这个问题的话 该如何处理??
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.sky.struts.action;import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.UnsupportedEncodingException;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.sky.struts.form.UploadForm;/**
* MyEclipse Struts
* Creation date: 01-11-2011
*
* XDoclet definition:
* @struts.action path="/upload" name="uploadForm" input="/upload.jsp" scope="request" validate="true"
* @struts.action-forward name="success" path="success.jsp"
*/
public class UploadAction extends Action {
/*
* Generated Methods
*/ /**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
System.out.println("go to action");
UploadForm uploadForm = (UploadForm) form;// TODO Auto-generated method stub
String userName = uploadForm.getUserName();
System.out.println(userName);
if(userName !=null){
try {
userName= new String (userName.getBytes("ISO8859-1"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(uploadForm.getMyfile() != null){
System.out.println(userName);
System.out.println("有文件");
System.out.println("文件名称"+uploadForm.getMyfile().getFileName());
System.out.println("文件大小"+uploadForm.getMyfile().getFileSize());
try {
System.out.println("文件内容"+uploadForm.getMyfile().getFileData());
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return mapping.findForward("success");
}
}可以使用struts1.x自己封装的方法 FormFile