许多朋友和我一样,取得的文件为null

属性当然也是对的。为什么呢。

是因为struts2上传时要加上传拦截,

如:

(1)   <action name="file" class="fileAction">
             <!--Auto Register Action:2010-07-07 14:22:37.281-->
             <!-- 配置fileUpload的拦截器 -->
          <interceptor-ref name="fileUpload">
           <!-- 配置允许上传的文件大小 -->
           <param name="maximumSize">4000000</param>
         </interceptor-ref>
        <interceptor-ref name="defaultStack"></interceptor-ref> 
        <param name="save_path">/fileout</param>
            <result name="fileinfo" type="json">
              file/file.jsp
            </result>
          </action>

配置后可正常上传文件。。

(2)一定要是post的而且enctype="multipart/form-data"

<form  action="../console/processReleaseAction!upLoadFile.action" method="post" enctype="multipart/form-data">
                                            <input type="file" value="上传" name="flowFile" />
                                            <input type="submit" value= "提交12" id="submit"/>
                                        </form>

(3)Action的变量和form的名称一致,并且有get和set方法,我这就不详细写了

/**
     * @属性说明:接收客户端文件信息
     **/
    private File flowFile;  
    
    /**
     * @属性说明:接收客户端文件文件名
     **/
    private String flowFileFileName;
    
    private String flowFileContentType;

(4)struts2的过滤器配置

<action name="processReleaseAction" class="cn.net.sinodata.sinoflow.console.processrelease.action.ProcessReleaseAction">
           <interceptor-ref name="fileUpload">
                <param name="maximumSize">4000000</param>
           </interceptor-ref>
           <interceptor-ref name="defaultStack"></interceptor-ref>
           <result name="success">/WEB-INF/jsp/console/processrelease/processRelease.jsp</result>
        </action>

(5)web.xml的struts2配置添加(这个是在struts2基础配置上添加的单独的文件上传过滤,详情可见struts2书籍介绍)

<filter>
        <filter-name>struts-cleanup</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.ActionContextCleanUp
        </filter-class>
    </filter>

(6)struts.xml添加 <constant name="struts.multipart.maxSize" value="1073741824" />,完整的struts.xml为

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
 <constant name="struts.ui.theme" value="simple" />
 <constant name="struts.i18n.encoding" value="GBK" />
 <constant name="struts.custom.i18n.resources" value="globalMessages" />
 <constant name="struts.multipart.maxSize" value="1073741824" />
 <!-- 引入相关配置文件 -->
 <include file="cn/net/sinodata/sinoflow/config/struts/struts-common.xml"/>
  <include file="cn/net/sinodata/ua/config/struts/user.xml" />
</struts>

<7>再不行,确认jar包没问题后,请加qq654382144!!!

struts2 文件上传为空相关推荐

  1. struts2文件上传大小限制问题小结(引用)

    最后解决办法: 页面js控制上传文件的大小,在页面进行控制.如下代码 inputs是所有文本上传input DOM //名称信息var nameStr='';//大小信息var sizeStr=''; ...

  2. struts2文件上传一个错误的解决

    struts2文件上传一个错误的解决 在做struts2的多文件上传时,选择了几个比较大的文件,点击"提交"后,画面没有提示说文件太大,而是清空了各个表单项,查看控制台显示如下错误 ...

  3. Struts2之struts2文件上传详解

    一.学习案例:通过在uploadfile.jsp页面填写完表单,提交后跳转到success.jsp页面,然后验证upload包下上传文件是否成功. 二.案例分析:struts2文件上传并不是表面上看的 ...

  4. struts2 文件上传与下载 (初始文件上传的底层技术)——struts2第七讲

    2019独角兽企业重金招聘Python工程师标准>>> 文件上传 struts2 注:本文系作者在看了浪曦的风中叶老师的struts2视频的个人总结,希望能帮助广大struts2的初 ...

  5. Struts2文件上传方式与上传失败解决方式

    首先将几个对象弄出来 第一个 上传页面 第二个 上传action 第三个 startut2配置文件 我的文字描述不是很好,但是终归是自己写出来的,后来我在网上看到一篇关于文件上传描述的非常清楚的文章, ...

  6. Struts2文件上传的大小限制问题

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC"-/ ...

  7. struts2文件上传中,如何限制上传的文件类型

    来源:http://www.blogjava.net/landor2004/archive/2009/06/11/281416.html 这个在struts2的doc中已经有所说明,但是说得并不详细, ...

  8. 十六、Struts2文件上传与下载

    文件上传与下载 1.文件上传前提:<form action="${pageContext.request.contextPath}/*" method="post& ...

  9. struts2 html post large data,struts2文件上传限制大小问题

    struts2默认文件上传大小为2M,如需改动默认大小,解决方法例如以下: /success.jsp /error.jsp 5242880 struts.multipart.maxSize和fileU ...

最新文章

  1. JavaBean简单及使用
  2. 训练指南 UVALive - 3713 (2-SAT)
  3. 运维中心建设--服务台建设一期
  4. 关于java的volatile
  5. boost::histogram::axis::integer用法的测试程序
  6. LAN远程重启server安全方法
  7. python开发基础教程
  8. Vue之通过代理设置跨域访问
  9. case zhen语句_switch case语句,switch case用法详解
  10. 优秀的测试网站(转载)
  11. 剑指offer之 从尾到头打印链表
  12. VC 下加载 JPG / JPEG / GIF / PNG 图片最简单的方法
  13. 银行卡号码的校验规则(Luhn算法/模10算法)
  14. capturing self strongly in this block is likely to lead to a retain cycle 警告解决
  15. Xcode 14之大变化详细介绍
  16. 一年赚上亿的生意_甩过梅艳芳,做生意一年赚几亿,他竟然火了快四十年
  17. 医院医生护士都不愿说的医学小常识
  18. 计算机ram数据原理,每日一科普:了解RAM是什么?有何用?
  19. Win10获得system(即超级管理员)权限
  20. setString(1,username)是意思

热门文章

  1. 邮币卡如何“做局”? 高回报诱惑下的陷阱
  2. 无线高颜值游戏蓝牙耳机,500以内学生党最爱五款真无线蓝牙耳机
  3. Python GUI图形界面开发学习
  4. 基于STM32蓝牙智能手环脉搏心率计步器体温显示设计
  5. 取数组中最大值和最小值
  6. Computer:IPFS(星际文件系统)的简介、安装、使用方法之详细攻略
  7. IPTV技术研究及应用
  8. 【陈工笔记】# latex中,“_”如何写? #
  9. 顾大松:对北京市出租车、网约车、顺风车文件征求意见稿的六项建议
  10. HTML中tr、th和td