我正在尝试使用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。

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

感谢。

有帮助吗?

解决方案 2

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

其他提示

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

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

克里斯

Inputname定义输出“stream”

的方法的名称

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top