`

Struts2文件下载的一个问题

阅读更多

struts2这样的错误报错:
严重: Can not find a java.io.InputStream with the name [in] in the invocation stack. Check the <param name=”inputName”> tag

specified for this action.
struts.xml中的配置。
<!– 文件下载,支持中文附件名 –>
<action name=”fileDownload”>
<result name=”success” type=”stream”>
<!– 动态文件下载的,事先并不知道未来的文件类型,那么我们可以把它的值设置成为:
application/octet-stream;charset=ISO8859-1 ,注意一定要加入charset,否则某些时候会导致下载的文件出错; –>
<param name=”contentType”> application/octet-stream;charset=ISO8859-1</param>
<param name=”contentDisposition”>attachment;filename=”${downloadFileName}”</param>
<!– 使用经过转码的文件名作为下载文件名,downloadFileName属性
对应action类中的方法 getDownloadFileName() 其中特殊的代码就是${downloadFileName},它的效果相当于运行的时候将action对象

的属性的取值动态的填充在 ${}中间的部分,我们可以认为它等价于+action. getDownloadFileName()。 –>
<param name=”inputName”>inputStream</param>
<param name=”bufferSize”>4096</param>
</result>
</action>
如果struts的配置没有出错的话,那么最大的可能性就是路径的错误,在action中获取输入流的路径不是绝对路径,应该是相对路径。
如:
public InputStream getInputStream(){
InputStream inputStream = null;
inputStream = ServletActionContext.getServletContext().getResourceAsStream(“/upload/finleName.rar”);
System.out.println(“-> inputStream = “+inputStream);
return inputStream;
}

不能写成这样
public InputStream getInputStream(){
InputStream inputStream = null;
inputStream = ServletActionContext.getServletContext().getResourceAsStream(“c:/fileName.rar”);
System.out.println(“-> inputStream = “+inputStream);
return inputStream;
}

 

路径很重要,切记!

分享到:
评论

相关推荐

    struts2实现文件下载功能

    通过以上步骤,我们可以使用Struts2框架实现一个完整的文件下载功能。在`FileDownloadDemo`项目中,你应该能看到这些组件的实现。这个示例项目可以帮助你更好地理解和实践Struts2的文件下载功能,进一步提升你在Web...

    struts2文件上传下载源代码

    1. **配置Struts2 Action**:在`struts.xml`配置文件中,你需要定义一个Action,该Action负责处理文件上传请求。Action的类需要继承自`ActionSupport`,并覆盖`execute()`方法,以便处理上传的文件。 2. **设置...

    struts2中文学习文档

    从给定的文件信息来看,标题“struts2中文学习文档”和描述“struts2的根本webwork2”表明这是一份关于Struts2框架的学习资料,特别强调了Struts2与WebWork2的关系。Struts2是Apache Struts的一个版本,它是一个用于...

    struts2实现文件上传下载

    Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发中。文件上传和下载是Web应用程序中的常见功能,对于用户交互和数据交换至关重要。本篇文章将详细探讨如何在Struts2框架下实现文件的上传与...

    Struts2之struts2文件下载详解案例struts012

    在Struts2中处理文件下载是常见的需求,比如用户请求下载服务器上的文件,如PDF、图片或其他类型的文档。本案例"Struts2之struts012"将深入探讨如何在Struts2中实现文件下载的功能。 首先,我们需要创建一个Action...

    struts2_uploadify带进度条的多文件上传下载

    总之,这个项目实例为使用Struts2和Uploadify实现带进度条的多文件上传及下载功能提供了一个基础模板,对于学习和实践此类功能的开发者来说是一个有价值的参考。通过深入研究和理解这个项目的代码,可以提升对Struts...

    struts2文件上传下载

    在Struts2中,你可以在Action类中定义一个方法,该方法读取服务器上的文件内容并设置响应头,以便浏览器能够正确地处理下载。例如,你可以设置`Content-Disposition`头来指定文件名,以及`Content-Type`头来指定文件...

    struts2帮助文档

    struts2中实现文件上传 struts2中实现CRUD struts2中的OGNL struts2的新表单标志的使用 struts2与AJAX一 struts2与AJAX二 struts2与AJAX三 struts2中用Spring实现IOC struts2中的零配置与IOC struts2介绍之使用连接...

    Struts2+Jquery+Ajax

    Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,用于构建可维护性高、结构清晰的企业级应用。Struts2提供了丰富的功能,如拦截器、结果类型、国际化支持等,使得开发者...

    struts2文件下载

    在Struts2中,`DownloadAction.java`很可能是一个关键的控制器类,它负责处理用户请求并提供文件下载。这个类通常会包含以下方法: 1. **预处理方法**:在文件下载之前,可能需要进行一些预处理操作,比如验证用户...

    struts2 API帮助文档

    Struts2是一个强大的Java web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。这个API帮助文档是开发者在使用Struts2框架时的重要参考资料,它详细阐述了框架的各种组件、类库和方法,有助于理解并有效...

    struts2所有jar包程序文件

    Struts2是一个非常著名的Java Web开发框架,由Apache软件基金会维护。它基于MVC(Model-View-Controller)设计模式,极大地简化了构建基于Java EE的Web应用程序的过程。本资源包含"struts2所有jar包程序文件",是...

    struts2文件上传和下载

    2. **Struts2 Action类中的文件处理**: 文件上传后,Struts2会将文件内容存储在一个临时位置。通常,你需要在Action类中创建一个`File`对象和一个`String`类型的属性,如`private File file; private String ...

    Struts2 Struts2 超好的Struts2 pdf 文档

    Struts2是一个基于MVC(Model-View-Controller)设计模式的Java web应用程序框架,它在Web开发领域中被广泛使用。这个“超好的Struts2 pdf 文档”很可能包含了关于Struts2的全面介绍、核心概念、配置、拦截器、结果...

    struts2资源下载,struts2资源下载

    Struts2是一个强大的Java web应用程序框架,用于构建和部署企业级的MVC(Model-View-Controller)架构的Web应用。这个框架以其灵活性、可扩展性和丰富的插件库而受到开发者的广泛欢迎。在"struts2资源下载"中,我们...

    Struts2文件上传与下载

    Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括处理用户表单提交、进行文件上传和下载。在Web应用中,文件上传和下载是常见的需求,例如用户上传头像、下载文档等。Struts2通过其Action类和...

    Struts2接口文档

    Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,旨在简化创建用户交互式、数据驱动的web应用的过程。这个“Struts2接口文档”是开发者的重要参考资料,提供了关于...

    Struts2文件流方式导出下载excel、Txt、image图片

    1. **配置Struts2 Action**:在Struts2中,我们需要定义一个Action类,该类负责处理用户的下载请求。在Action中,我们创建一个方法,该方法将返回一个`StreamingResult`结果类型。`StreamingResult`是Struts2专门...

    struts2官方文档

    struts2官方文档

    struts2文件上传下载(注解版)

    Struts2是一个强大的MVC...理解并掌握以上知识点,你就能构建起一个基于Struts2的文件上传下载系统。实际应用中,还需要考虑安全性问题,如防止文件覆盖、大小限制、非法文件类型上传等,确保系统的稳定性和安全性。

Global site tag (gtag.js) - Google Analytics