Spring 3 ポートレットを介して CSV ダウンロードを提供する方法を考え出そうとしています。注釈を使用して、@ResourceMappingレポート パラメータを a の形式で受け取り、レポート@ModelAttributeを作成して返すハンドラを定義するメソッドがあります。私が実行している catch-22 は、クライアント フォームから送信されるパラメーターを検証しています。
ハンドラーを にする@ResourceMappingと、 を使用してヘッダーを設定し、レポートを書き出すことResourceResponseができますが、ユーザーの入力が検証に失敗したときに、エラーが発生してユーザーをポートレット ビューにリダイレクトする方法がわかりません。ただし、それを にすると、@ActionMappingをチェックしてBindingResult、必要に応じてフォームに戻すことがActionResponseできますが、 Content-Disposition ヘッダーを設定したり、CSV バイトを書き出すことはできません。これは非常に重要です。レポートを返送するため。
自分の選択肢が何であるかさえわからないので、ここで完全に途方に暮れています。ポートレットで私がやろうとしていることを行うことさえ可能ですか? 考えられる回避策について調べることができる他の例はありますか?