2013-07-18 49 views
3

我正在使用Struts2和Liferay開發應用程序。錯誤:application/pdf不是支持的MIME類型

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 ERROR [Jsr168Dispatcher:38] Could not execute action java.lang.IllegalArgumentException: application/pdf is not a supported mime type at com.liferay.portlet.MimeResponseImpl.setContentType(MimeResponseImpl.java:159)...

不知道如何解決此問題。非常感謝別人的幫助。真的需要這樣做。

+0

您正在使用哪臺服務器? – Richie

+0

哪個liferay版本?你在用'Jsr286Dispatcher'嗎? –

+0

Liferay 6.1。不,我不使用Jsr286Dispatcher – user2594235

回答

0

portletUrlType="resource"到用於創建下載鏈接<s:url>標籤。

<s:url var="downloadUrl" action="download" portletUrlType="resource" /> 
+0

對我不起作用,同樣的錯誤 – user2594235

+0

@ user2594235:剛剛測試過,適用於我。你是否正確地重新部署了你的portlet? Liferay傾向於緩存所有內容。還有哪個版本的Struts2和portlet插件? –

+0

我重新部署了portlet,但仍然無法正常工作,我使用portlet pugin 2.2.3 – user2594235

相關問題