最近在使用struts2做一个多文件上传,使用的是Commons-FileUpload组件,参照官方的一篇文档(http://struts.apache.org/2.0.14/docs/file-upload.html),总是上传不成功,临时文件也都上传到指定目录下了,就在取不到该文件,引用时报空指针异常,实际上就是从临时目录中拿不到该已上传文件的引用,多方查找资料都无法解决,耗了2,3天的时间,最后按照一本书(Struts 2 Design and Programming: A Tutorial)中的源代码一步一步去做,终于上传成功了,对比代码发现是struts.xml配置不同,官方文档是:
<action name="doUpload" class="com.example.UploadAction">
<interceptor-ref name="basicStack"/>
<interceptor-ref name="fileUpload">
<param name="allowedTypes">image/jpeg,image/gif</param>
</interceptor-ref>
<interceptor-ref name="validation"/>
<interceptor-ref name="workflow"/>
<result name="success">good_result.jsp</result>
</action>
而实际上应该把<interceptor-ref name="basicStack"/>这一行放到<interceptor-ref name="fileUpload">的后面,没有这一行验证功能就没有了。
不管怎样这篇文档真的很详细,比起网上搜到的其他文档来说,参考价值极高,只是是英文的缘故,可能我也没有完全看懂里边的玄机就开始实践,才出这个问题。
分享到:
相关推荐
在Struts2框架中,实现文件上传需要进行一系列配置和编程。下面我们将深入探讨Struts2文件上传的配置和实现。 首先,为了支持文件上传,我们需要在Struts2的核心配置文件`struts.xml`中添加相应的拦截器。Struts2...
在Struts2中,如果HTTP请求的`content-type`不合法,那么在解析上传文件的过程中就会抛出异常。当异常被捕获后,异常信息将被错误地解释为OGNL表达式。这意味着攻击者可以通过构造恶意的`content-type`头来注入任意...
以下是对Struts2中文件上传及`codeFilter`的详细解释: **1. Struts2文件上传机制** Struts2提供了内置的支持来处理文件上传,主要利用了Apache Commons FileUpload库。在Struts2的Action类中,可以定义一个字段,...
此“struts-2.3.1.2-lib精简必须包”包含了运行Struts 2应用程序所需的核心库文件。下面将详细介绍这个精简包中的关键组件和它们在开发中的作用。 1. **Struts 2核心库**: - `struts2-core-2.3.1.2.jar`: 这是...
在Struts2中处理文件上传功能时,通常需要依赖两个关键的第三方库:`commons-fileupload`和`commons-io`。这两个jar包在Java文件上传处理中扮演着至关重要的角色。 `commons-fileupload-1.2.1.jar`是Apache Commons...
Struts2是一个流行的...总的来说,"struts2文件上传下载"涵盖了Web开发中的基础功能,对于任何需要处理用户文件交互的应用来说都非常重要。理解并熟练运用这些技术,可以帮助你创建更加健壮和用户友好的Web应用程序。
首先,我们需要了解Struts2中的Action类,它是处理请求的核心。在这个例子中,可能会有一个名为`FileUploadAction`的类,它继承了Struts2的`ActionSupport`类,并且覆盖了`execute`方法。在`execute`方法内,我们...
在Struts2中,文件上传功能是常见的需求,比如用户可能需要上传个人照片、文档或者其他类型的文件。在这个"Struts2之struts2文件上传详解案例struts011"中,我们将深入探讨如何实现这一功能。 首先,我们需要了解...
在Struts2中,文件上传功能是通过Struts2提供的Interceptor(拦截器)和ActionSupport类来实现的。这个"struts2文件上传文档"详细介绍了如何在Struts2应用中实现在用户界面中接收并处理文件上传的请求。 文件上传在...
- `commons-fileupload.jar`:处理文件上传的组件。 - `commons-lang3.jar`:Apache Commons Lang,提供各种字符串和语言操作工具类。 - `commons-logging.jar`:日志服务抽象层,允许开发者选择不同的日志实现。...
struts2中实现文件上传 struts2中实现CRUD struts2中的OGNL struts2的新表单标志的使用 struts2与AJAX一 struts2与AJAX二 struts2与AJAX三 struts2中用Spring实现IOC struts2中的零配置与IOC struts2介绍之使用连接...
在文件上传场景中,Struts2主要负责接收前端发送的文件数据,并将这些数据存储到服务器的指定位置。配置Struts2的Action类和相应的XML配置文件,可以定义文件上传的处理逻辑。 接着,jQuery是一个高效、简洁的...
1. **.struts2配置**:在Struts2框架中,需要在`struts.xml`配置文件中添加相应的action配置,声明文件上传的处理方法。通常,你需要设置`<result>`类型为`stream`,以便处理上传的文件。 2. **Action类**:创建一...
在Struts2中,文件上传是常见的功能,尤其是在处理用户表单时,如图片、文档等文件的上传。在本案例中,我们将探讨如何使用Struts2与Flash技术相结合实现文件的上传,并且展示上传进度条,提高用户体验。 1. **...
在Struts2中,文件上传是常见的功能之一,尤其是在处理用户提交表单时,比如上传图片、文档等。本文将详细讲解Struts2文件上传的实现原理以及源码分析。 首先,理解文件上传的基本流程。当用户通过HTML表单选择文件...
在Struts2中,通过集成`Commons FileUpload`,可以方便地处理文件上传请求。 要实现Struts2的文件批量上传,首先需要在`struts.xml`配置文件中添加相应的action配置,指定接收文件的Action类。Action类中需要定义一...
在Struts2中,文件上传主要依赖于Apache的Commons FileUpload库,这是一个专门用于处理HTTP多部分请求(multipart/form-data)的工具。以下是一些关键知识点: 1. **配置Struts2插件**: 首先,需要在Struts2的...
在Struts2中,文件上传和下载是常见的功能需求,它们对于用户交互性至关重要,例如用户提交表单时上传图片或文档,或者系统提供文件资源下载服务。本篇文章将深入探讨Struts2中的文件上传和下载机制。 首先,我们来...
在Struts2中,文件上传是常见的功能之一,尤其在处理用户提交的表单数据时,如上传图片、文档等。在本项目中,"struts2多文件的上传"实现了用户一次性上传多个文件的能力。 要理解这个功能,首先我们需要了解Struts...