問題タブ [uiinclude]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
77 参照

jsf - JSF での動的テンプレート

背景 -私は、ビュー テクノロジとして JSP を使用する従来の JSF アプリケーションに取り組んでいます。JSF 2.2/2.3 に移行することを決定したため、JSP ページも facelets に変更しています。

問題 -次のテンプレートがあります - Layout.xhtml - 次のようなレイアウトが含まれています -

以下はサンプルファイルです (index.xhtml など) -

問題は - ヘッダーとフッターはすべてのページで同じですが、本文は異なります。つまり、最初にアプリケーションを起動すると、searchRecord ページが表示されます。ユーザーが情報を入力したら、データを表示する必要があります。このページで、ユーザーが exit を押した場合、本文には exit ページが含まれている必要があります。前を押すと、再び searchRecord ページが表示されます。

つまり、 dynamic を含める方法を探しています<ui:include>。それ以外の場合は、操作ごとに 3 ~ 4 個の xhtml ページを作成する必要があります。

リサーチ -

私はいくつかの質問をしました -

<ui:include> with dynamic src ... 完全な狂気

ダイナミック UI:インクルード

しかし、私の問題を解決するものは何もないようです。次のように使用すると-

まず、Bean が初期化されていないため、最初のページを起動するのに苦労しました。<f:event type="preRenderComponent">which を使用して Bean を初期化し、フラグを設定して、この問題を解決しようとしました。起動の問題が解決され、searchRecord ページが正しく表示されるようになりました。しかし、詳細の表示ボタンをクリックすると、同じページに残るか、(postback() メソッドを使用して) showDetails ページに移動すると、詳細は表示されません (つまり、showDetails Bean は呼び出されません)。

上記の動的レイアウトを実装する方法を教えてください。