struts2 上传类型限制一定要继承 extends ActionSupport? 
在做上传的时候,出现的问题。 
不继承的话,类型限制不起作用。

解决方案 »

  1.   

    小弟刚刚学完Struts2. 自学的 也有好多不明白的地方!
      

  2.   

     《strust2.1权威指南》 好像有这么一说!
      

  3.   

    类型限制是在拦截器中完成的,如果你能从request中读取请求的二进制数据,可以不用继承,瞧瞧commons-fileupload
      

  4.   

    这是它的一种高级用法
      你如果要做文件上传必须继承ActionSuppot
      

  5.   

    Struts 2是通过Commons FileUpload文件上传。Commons FileUpload通过将HTTP的数据保存到临时文件夹,然后Struts使用fileUpload拦截器将文件绑定到Action的实例中。从而我们就能够以本地文件方式的操作浏览器上传的文件。
      

  6.   

    不用,但是要在struts.xml中指定method
      

  7.   

    这不用说了,用Struts2最好用它
      

  8.   

    不需要。package com.learn.web.action;import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;import com.opensymphony.xwork2.Action;public class FileUploadAction implements Action { private File upload;
    private String uploadFileName;
    private String uploadContentType; public String execute() throws Exception {  FileOutputStream fos = new FileOutputStream("C:/" + getUploadFileName());
    FileInputStream fis = new FileInputStream(getUpload());
    byte[] buffer = new byte[1024];
    int len = 0;
    while((len = fis.read(buffer)) > 0) 
    fos.write(buffer, 0, len); return SUCCESS;
    }

    public File getUpload() {
    return upload;
    } public void setUpload(File upload) {
    this.upload = upload;
    } public String getUploadFileName() {
    return uploadFileName;
    } public void setUploadFileName(String uploadFileName) {
    this.uploadFileName = uploadFileName;
    } public String getUploadContentType() {
    return uploadContentType;
    } public void setUploadContentType(String uploadContentType) {
    this.uploadContentType = uploadContentType;
    }

    }JSP:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@ taglib uri="/struts-tags" prefix="s" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>index.jsp</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    </head>

    <body>
    <s:form name="uploadFiles" action="uploadFiles.action" enctype="multipart/form-data" method="post">
    <s:file name="upload" label="文件:"></s:file><br />
    <s:submit value="确定"></s:submit>
    </s:form>
    </body>
    </html>
    我昨天还在看struts2 权威指南下载这一章呢,这是我昨天写的例子。