在Struts2中使用Stream Result

时间:2008-11-02 23:28:09

标签: java struts2 resulttype

我正在尝试使用Stream Result从struts2应用程序返回图像。我似乎在配置操作时遇到问题。这是配置:

    <result name="success" type="stream">
            <param name="contentType">image/jpeg</param>
            <param name="inputName">inputStream</param>
            <param name="contentDisposition">filename="${filename}"</param>
            <param name="bufferSize">1024</param>
    </result>

问题似乎是inputName参数,根据文档是:

  

来自链接操作的InputStream属性的名称(默认= inputStream)。

我不确定我应该把它放在哪里。我得到的错误是:

  

在调用堆栈中找不到名为[inputStream]的java.io.InputStream。

以前有人用过吗?有什么建议吗?

感谢。

3 个答案:

答案 0 :(得分:6)

我相信你的contentDisposition错了,应该是:

<param name="contentDisposition">attachment; filename="${filename}"</param>

克里斯

答案 1 :(得分:5)

我发现this解释说InputStream必须由我创建。我有意义的是从我希望用户下载的文件中创建InputStream,然后将Stream传递给结果。我猜这是我的答案。

答案 2 :(得分:3)

Inputname定义输出“stream”

的方法的名称

public InputStream getInputStream()   {     返回new ByteArrayInputStream(_bytes);   }