2012-12-13 60 views
1

該插件似乎不能正常工作。Struts 2,JasperReports插件:如何爲生成的報告設置文件名

這在struts.xml中宣佈我的行動:

<action name="actionName" class="isa.presentation.jasper.MyClass"> 
    <result name="success" type="jasper"> 
     <param name="location">jasper/courriers/mutuelle.jasper</param> 
     <param name="dataSource">resultats</param> 
     <param name="format">HTML</param> 
     <param name="documentName">xxx</param> 
    </result> 
</action> 

所以對於一些格式(HTML,XML),輸出文件的名稱是不是它應該是(XXX [。格式]),但(行動的名稱).action!

爲什麼?可以做些什麼?

問題2: 對於某些格式(PDF,HTML,XML),該文件直接出現在良好的應用程序中,其他人則會詢問您是否要打開它或記錄它。 HTML et XML格式的問題在於它們直接在瀏覽器中打開而不是在網站上打開。 所以有可能始終出現提示框(無論格式如何)。如果沒有,是否可以要求在瀏覽器的另一個選項卡中打開該文件?

回答

2

我從來沒有使用碧玉的結果,但according to the documentation

1)format必須JasperReportConstants之一,

然後FORMAT_HTML代替HTML

2)你錯過了contentDisposition PARAM,指定文件名和配置類型(默認內聯):

<param name="contentDisposition">inline; filename="yourFileName.html"</param> 

<param name="contentDisposition">attachment; filename="yourFileName.html"</param> 

Inline意味着你要在瀏覽器中打開它(如果一個插件被發現),您要問,如果下載或從您的計算機中的程序將其打開Attachment

我不明白什麼documentName PARAM立場,但你可以嘗試和更新的結果你的問題;)

彙總:

<action name="actionName" class="isa.presentation.jasper.MyClass"> 
    <result name="success" type="jasper"> 
      <param name="location">jasper/courriers/mutuelle.jasper</param> 
      <param name="dataSource">resultats</param> 
      <param name="format">FORMAT_HTML</param> 
      <param name="contentDisposition"> 
         attachment; filename="yourFileName.html"</param> 
      <param name="documentName">yourFileName</param> 
    </result> 
</action> 
相關問題