2

サーブレットから JSF ViewScoped マネージド Bean にアクセスするにはどうすればよいですか?

(問題のマネージド Bean が既に作成されており、まだ破棄されていないと仮定します)

4

1 に答える 1

4

ビュー スコープの変数は、コンポーネント ツリーのビュー マップに格納されます。ビュー コンテキスト外でこのデータにアクセスするには、JSF コンテキストを作成し、リクエストのビューを復元する必要があります。これには、 JSF コンテナーによって提供される機能の多くを書き直すことが含まれます。

JSF 2 は、ページを更新せずにサーバー側の状態と対話するメカニズムを提供します: AJAX タグJSF JavaScript API。可能であれば、それらを活用することを検討します。

または、サーブレット (セッション) を介して簡単にアクセスできるスコープにデータを配置します。

通常、ビュー ステートはセッション内に保持されるため、ここからビュー ステートにアクセスすることは技術的に可能です。ただし、これには実装固有のハックが含まれ、基盤となるフレームワークのアップグレードに耐えられない可能性があります。私はこれを解決策とは見なしません。

于 2012-09-02T10:38:47.417 に答える