問題:
i)JSF2アプリケーションで、タブコントロールを使用してページを作成したいのですが、ユーザーがタブをクリックすると、以下のパネルのコンテンツがサーバーのxhtmlファイルからajax呼び出しを介して読み込まれます。
ii)これでグレースフルデグラデーション(Javascriptが無効になっている場合)をサポートして、タブをクリックするとHTTPリクエストが発生し、新しいページが読み込まれるようにします...またはその逆で、プログレッシブエンハンスメントを使用します。
部分的な解決策:
i)BalusCがjsf 2 outputLinkをajaxする方法に
投稿したコード例でこれを達成できると思います:-
<h:form>
<f:ajax render=":include">
<h:commandLink value="Home" action="#{menuManager.setPage('home')}" /><br />
<h:commandLink value="FAQ" action="#{menuManager.setPage('faq')}" /><br />
<h:commandLink value="Contact" action="#{menuManager.setPage('contact')}" /><br />
</f:ajax>
</h:form>
<h:panelGroup id="include">
<ui:include src="#{menuManager.page}.xhtml" />
</h:panelGroup>
質問
これを拡張して問題を解決するにはどうすればよいですか(ii)または、他のまったく異なる方法はありますか?たぶん私はnoscriptでこれを達成できると思いますが、方法がわかりません!
編集:考えられる解決策-まだ検証していません:
上記のコードは、ajaxが無効になっている場合でも機能するはずです。http://www.laliluna.de/articles/posts/jsf-2-evaluation-test.html :)
エレガントによると、HTTPを介して機能するはずです。やってみます。