Jasper Reports (v3.5.2) を使用して PDF/HTML のレポートを生成し、Web アプリケーションのブラウザーに印刷しようとしています。この Web アプリケーションは、フロント エンドに JSF (Woodstock) と EJB 3 (JPA と Hibernate を MySQL データベースへの永続化プロバイダーとして使用) を既に使用しています。
私の質問は、Jasper ベースのレポートを生成するためのコードはどこにあるべきですか? 私はこれについて完全に混乱しています。JSFフロントエンドに入れる必要がありますか? それとも、セッション Bean としてビジネス ロジックの「レポート」モジュールにする必要がありますか?
これに適した場所は、別のモジュールとしてのビジネス層だと思います。レポートの名前、入力パラメーター マップ、およびレポート形式をビジネス メソッドへのパラメーターとして使用してビジネス メソッドを呼び出し、生成された pdf/html を取得してブラウザーに送信します。私はこれで正しい軌道に乗っていますか?
これを行う方法のパターンを提案できますか?
また、すでに JPA を使用しているため、EJBQL を使用したいと考えています。
ありがとう。