zoukankan      html  css  js  c++  java
  • struts2 下载记录

    最近做解析Excel进行批处理功能,需要将处理的结果生成PDF文件供下载。遇到了struts2的下载,所以记录下来。
    首先,是struts2的配置文件,如下:
    代码片一:

    代码片二:

    代码片三:

    其中,代码片一是任意名的方法,但方法名和配置文件中的method相同,返回结果要和配置文件中的result的name搭对。如果配置中不写method,则是默认execute方法
    配置文件中其他项是:
    1.contentType 一般情况为application/octet-stream;即可。
    2.contentDisposition 配置结果为attachment;filename="${downloadFileName}",这是下载后文件名,可以自定义写死,如:报告。pdf;也可以是动态获取,注意这里如有中文,需要进行特殊处理。downloadFileName,Action中必须有个方法叫getDownloadFileName(),否则不会成功
    3.inputStream 获取的是流,一般会取名inputStream ,Action中则有个方法叫getInputStream()对应,返回的结果也为InputStream
    4.bufferSize 缓冲区大小
    常见错误:java.lang.IllegalArgumentException: Can not find a java.io.InputStream with the name [targetFile] in the invocation
    stack. Check the tag specified for this action.
    原因:inputstream为null,可能路径有问题。
    处理办法:确认文件路径,断点调试。

    上文为自己开发中的记录,如有问题或错误,请大家指正。
  • 相关阅读:
    linux c编程:Posix消息队列
    go语言之接口二
    linux c编程:FIFO
    python cookbook第三版学习笔记十九:未包装的函数添加参数
    linux c编程:popen
    linux c编程:管道
    Linux c编程:I/O多路复用之epoll
    Linux c编程:I/O多路复用之select
    inux c编程:记录锁
    python cookbook第三版学习笔记十八:可由用户修改的装饰器
  • 原文地址:https://www.cnblogs.com/Kevin-1992/p/12608449.html
Copyright © 2011-2022 走看看