3

我正在使用 Struts2 和 Liferay 来开发应用程序。

struts.xml的如下:

<action name="download" class="com.stp.portal.view.DownloadAction">
    <result name="success" type="stream">
        <param name="contentType">application/pdf</param>
        <param name="inputName">fileInputStream</param>
        <param name="contentDisposition">attachment;filename="abc.pdf"</param>
        <param name="bufferSize">1024</param>
    </result>
</action>

我基本上想从服务器下载一个pdf文件。但我收到以下错误:

10:05:55,782 错误 [ Jsr168Dispatcher :38] 无法执行操作 java.lang.IllegalArgumentException:应用程序/pdf 不是 com.liferay.portlet.MimeResponseImpl.setContentType(MimeResponseImpl.java:159) 支持的 mime 类型...

不知道如何解决这个问题。真的很感激有人的帮助。确实需要这样做。

4

2 回答 2

0

放入您用于创建下载链接portletUrlType="resource"的标签。<s:url>

<s:url var="downloadUrl" action="download" portletUrlType="resource" />
于 2013-07-18T12:42:31.633 回答
0

查看源代码似乎只是application/vnd.wap.xhtml+xml并且text/html是允许的。
来源: http: //grepcode.com/file/repo1.maven.org/maven2/com.liferay.portal/portal-impl/6.0.2/com/liferay/portlet/MimeResponseImpl.java

于 2013-07-18T10:42:20.583 回答