問題
- Liferay 6.2 および Amazon S3 でレポートを生成できない
- ヒット マルチパート アップロード エラー CSV ファイル作成時
シナリオ - 次のエラーが発生する可能性があります。
multipart upload failed
Environment
- Liferay ポータル 6.2
解決策
これは、空のファイル (0 バイト) をアップロードするときの S3 API の既知の動作です。 参照: https://github.com/aws/aws-sdk-php/issues/1649
1. この回避策には、Jasper Reports の構成を微調整することが含まれます。 空のファイルを生成するよりも、空のセクションまたはデータのないセクションを作成することをお勧めします。
レポート テンプレートの場合、属性 "When No Data Type" を "No Data Section" または "All Sections No Detail" に設定します。
スクリーンショットは Jaspersoft Studio 6.9.0 を使用
2. データ定義ファイルで、対応するコンポーネントを <jasperReport> タグに追加します。
whenNoDataType="AllSectionsNoDetail"または
whenNoDataType="NoDataSection"
* <noData></noData> タグにはさらに属性を追加できます。 以下に例を示します。
<noData>
<band height="10">
<staticText>
<reportElement x="" y="" width="" height="" uuid=""/>
<box>
<bottomPen lineWidth="" lineColor=""/>
</box>
<text><![CDATA[message here]]></text>
</staticText>
</band>
</noData>
追加情報