2011-01-06 10 views
4

JFreeChartライブラリを使用して動的にチャートを生成し、フロントエンドのユーザに表示しようとしています。私のプロジェクトでは、ビュー技術としてJSF 1.2を使用しており、BufferedImageを表示する戦略を決定しようとしています。動的チャート生成/ JSF 1.2からサーブレットにオブジェクトを渡す

これまでのところ、サーブレットを使用してグラフを生成し、h:graphicImageを使用してその場所を指すようにするのが最適な方法でした。主な問題は、オブジェクトの値に基づいてグラフの生成が動的になるように、JSFからサーブレットにオブジェクトを渡す方法は?

答えて

4

JSFは、自動生成され一意のキーに沿ってセッションを行い、そのキーをリクエスト・パラメータまたはpathinfoとしてサーブレットに渡し、最後にサーブレットがキーによってセッションからサーブレットを削除させて使用させます。

(INITまたはアクションメソッド間)JSFビーン:

this.key = UUID.randomUUID().toString(); 
externalContext.getSessionMap().put(key, object); 

JSFビュー:

<h:graphicImage value="servleturl?key=#{bean.key}" /> 

サーブレット:個人

String key = request.getParameter("key"); 
Object object = request.getSession().getAttribute(key); 
request.getSession().removeAttribute(key); 
// ... 
+0

このソリューションは、私たちのシナリオではおそらく最善の可能性があり、最初のテスト後に非常に迅速に作業しました。グラフィカルなチャートを生成するために使用できるオブジェクトにデータの集合を保持する必要があります。このデータはURLパラメータの一部として渡すのが理想的ではないため、セッションに格納されている内容に注意を払い、わかりやすく保管する必要があります。 – rynmrtn

+0

ようこそ。 – BalusC

2

、Iは、データを渡すために希望しますこれにより、サーバーの状態に頼ることがなくなり、チャートサービスを外部化しやすくなります。ただし、データセットが大きい場合は、practical limitationsに実行される可能性があります。

関連する問題