xiaochao

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  1 随笔 :: 6 文章 :: 48 评论 :: 0 Trackbacks

struts2 文件下载类是很简单的,代码:

 1 package test.filedown
 2 
 3 import java.io.InputStream;
 4 import com.forlink.wps.template.dao.TemplateJackrabbitDao;
 5 import com.forlink.wps.template.dao.impl.TemplateJackrabbitDaoImpl;
 6 import com.forlink.wps.template.dto.TemplateDTO;
 7 import com.opensymphony.xwork2.ActionSupport;
 8 
 9 public class FileDownloadAction extends ActionSupport
10 {
11 
12     private String    inputPath;
13 
14     private String    contentType;
15     
16     private String filename;
17     
18 
19     public InputStream getInputStream() throws Exception
20     {
21         return ServletActionContext.getServletContext().getResourceAsStream(inputPath);
22 
23     }
24 
25     public String execute() throws Exception
26     {
27         inputPath="/image/close_w.gif";//要下载的文件名称
28         filename="test.gif"//保存文件时的名称
29         contentType="image/gif";//保存文件的
30             return SUCCESS;
31     }
32 
33 
34     public String getContentType()
35     {
36         return contentType;
37     }
38 
39     public void setContentType(String contentType)
40     {
41         this.contentType = contentType;
42     }
43 
44     public String getFilename()
45     {
46         return filename;
47     }
48 
49     public void setFilename(String filename)
50     {
51         this.filename = filename;
52     }
53 }
54 
主要是在Action的配置上,配置文件如下:
<action name="filedownload"
            class
="test.filedown.FileDownloadAction">
            
<result name="success" type="stream">
                
<param name="contentType">${contentType}</param>
                
<param name="inputName">inputStream</param>                
                
<param name="bufferSize">4096</param>
                
<param name="contentDisposition">filename="${filename}"</param>
                
<param name=""></param>
            
</result>
</action>
posted on 2007-09-21 09:32 小超 阅读(3959) 评论(5)  编辑  收藏 所属分类: struts2

评论

# re: struts2文件下载 2008-09-16 11:15 小数
严重: Servlet.service() for servlet default threw exception
java.lang.IllegalArgumentException: Can not find a java.io.InputStream with the name [inputStream] in the invocation stack. Check the <param name="inputName"> tag specified for this action.
at org.apache.struts2.dispatcher.StreamResult.doExecute(StreamResult.java:189)
老提示这个错什么意思
action里有哪个方法啊  回复  更多评论
  

# re: struts2文件下载 2008-12-15 20:32 群哥
<param name="inputName">inputStream</param> 这一行写错了inputStream  回复  更多评论
  

# re: struts2文件下载 2009-02-23 16:18 sfdsf
@小数
  回复  更多评论
  

# re: struts2文件下载 2009-05-05 10:49 zhenglsuhagn
@sfdsf
很可能的原因是在写的文件路径中,没有找到对应的文件  回复  更多评论
  

# re: struts2文件下载 2010-05-08 10:34 zjlg
@zhenglsuhagn
是这个原因,inputname这个取不到值  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: