用struts2 写 流文件 下载,比如导出excle文件,用windows 的文件另存为,没有问题。但是用迅雷下载时,下载下来的文件的后缀为.action。
解决:思路,迅雷下载时取得的是请求的action的名称。可以将请求的action的后缀改成你要下载的流文件的后缀。(比如,excle 的后缀为xls)。
struts2拦截的请求的后缀名称是可以设置的。这个设置可以在自定义的strtus.properties或struts.xm中定义。
下面是struts.xml中的定义:
<!-- 该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts2处理。
如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。 -->
<constant name="struts.action.extension" value="action,htm,xls" />
这样设置之后,则后缀为.xls的请求,就会被struts2的拦截器所拦截,当成一个action去处理。迅雷下载时取得这个请求的url。就完成了要下载的流文件的后缀的问题。
补充一点:在实际开发中。配置在web.xml文件中的struts2的过滤器,一般不会去过滤所有的请求。会准确的配置出要过滤的请求。可以这样配置。
<!-- 定义Struts2的FilterDispatcher的Filter -->
<filter>
<!-- 定义核心Filter的名字 -->
<filter-name>struts2</filter-name>
<!-- 定义核心Filter的实现类 -->
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<!-- FilterDispatcher用来初始化Struts2 并且处理所用的web请求 -->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.xls</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/struts/*</url-pattern>
</filter-mapping>
分享到:
相关推荐
使用struts2实现文件下载功能,可以直接运行!
Struts2文件流方式导出下载excel、Txt、image图片,直接返回给浏览器提示下载,不生成临时文件,直接保存在客户端
在struts2基础上实现的包括单文件、多文件的上传及下载
struts2配置文件以及代码示例struts2配置文件以及代码示例struts2配置文件以及代码示例struts2配置文件以及代码示例struts2配置文件以及代码示例struts2配置文件以及代码示例struts2配置文件以及代码示例struts2配置...
Struts2上传文件(直接用request)
·Struts2配置文件介绍 struts.xml action package ·Struts2配置文件介绍 struts.xml action package
使用struts2框架进行文件的上传并限制文件的大小与类型,使用struts2框架实现文件下载
struts2文件上传和下载 struts2文件上传和下载 struts2文件上传和下载 struts2文件上传和下载 struts2文件上传和下载
网上的Struts2进行的文件下载一般都是单文件或者固定的文件,并没有(很少)实现随意文件的下载的例子 提供多文件上传,上传成功后,提供刚上传的文件下载功能(其他的都可以在其上面进行扩充) 多文件 上传 下载...
struts2 库文件下载This product includes software developed by The Apache Software Foundation (http://www.apache.org/).
struts2文件下载极其简单struts2文件下载极其简单struts2文件下载极其简单struts2文件下载极其简单
struts2中的文件上传和下载: 1.首先导入commons-fileupload-1.2.1.jar和commons-io-1.4.jar两个jar包 2.其次JSP页面中的文件上传控件所在的form必须设置属性enctype="multipart/form-data" 3.再次,struts2中...
http://blog.csdn.net/johnjobs/article/details/8076832博文中附件的下载链接
struts2配置文件 struts2代码
struts2文件上传与下载, <s:form name="Myform" action="/fileManage/upload" method="post" enctype="multipart/form-data" theme="simple" > <s:fielderror></s:fielderror> 文件"></s:file> ...
Struts2下载文件时中文乱码和空格处理
该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts 2处理.如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开. struts.serve.static 该属性设置是否...
Struts2 文件上传下载 多文件 单文件 实例;支持单个或多个文件的上传下载,并且自定义上传文件的大小和类型!!!
Struts2中文件上传与下载案例
一个利用Struts2实现文件的上传下载,使用的是同步方式。没有用ajax请求