私が何か間違ったことをしているのか、バグなのか何かなのかわかりません。
私のセットアップには、IntelliJ IDEA 12、JBoss AS 7.2.0.Final、Richfaces 4.3.4 が ear-Project (Maven なし) 内の war-File に含まれています。
私はこのインデックスページを持っています:
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:a4j="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich">
<rich:notifyMessage stayTime="3500" showShadow="true" showCloseButton="true" />
<f:view>
<h:head> <title> title </title> </h:head>
<h:body>
<!-- some more divs for page-design, but commented out at the moment -->
<div id="page">
<div id="index_workspace" style="width:1000px;margin:auto;">
<h:panelGrid columns="2" id="index_workspace_table">
<rich:panel id="index_workspace_navi_left" style="width:180px;min-height:600px;max-height:600px;">
<ui:include src="general/navi_left.xhtml"/>
</rich:panel>
<rich:panel id="index_workspace_content" style="width:550px; min-height:600px; max-height:600px;" rendered="#{not empty naviBean.content}">
<a4j:outputPanel id="index_workspace_content_ajax" ajaxRendered="true">
<ui:include src="#{naviBean.content}" id="current_site" />
</a4j:outputPanel>
</rich:panel>
</h:panelGrid>
</div>
<!-- some more divs for page-design, but commented out at the moment -->
</div>
</h:body>
</f:view>
</ui:composition>
セクション内で、フォームを含むページと RF がもたらすその他すべての優れた機能を読み込みます。しかし、ロードされたページのこの部分にレンダリングの問題があります。
<rich:select id="someID_1" rendered="true" immediate="true" required="true" enableManualInput="true" defaultLabel="someLabel">
<a4j:ajax render="true">
<f:selectItems id="selectlist" value="#{BackingBean.SelectableItem-ListGetter}"/>
</a4j:ajax>
</rich:select>
そして、ここに私の問題があります:
このドロップダウン リストは、F5 または CTRL-R アクションなどのページのリロード時にのみレンダリングされます。また、この要素をある種の「開始ページ」(最初に index.xhtml にロードされたもの) に設定すると、非常にうまくレンダリングされることがわかりました。この場合、この種の要素を含む他のすべてのページも正しくレンダリングされます。
私は試した
JSF を 2.1 から 2.2.1 に更新すると、問題が増えるだけなので、ロールバックしました。
「標準」の h:selectOneMenu は同じように動作します。
rich:select 内の追加オプション (例: render、immediate、required、...)
ナビゲーション内のさまざまな ajax コマンド (さまざまなレベルのサーバー、クライアント、ajax)
何日もの間グーグルで検索しました-使用できるヒントが見つかりませんでした
私が自信を持って正しい方向に私を導くすべてのヒントをいただければ幸いです。
さらに、私のナビゲーションは次のようになります (index.xhtml の別の div 内):
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:a4j="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich">
<h:form id="navi_left">
<rich:panel>
<rich:panelMenu itemMode="ajax" groupMode="ajax" itemChangeListener="#{naviBean.updateContent}" >
<rich:panelMenuGroup itemLeftIcon="disc" label="Erfassung" name="#{naviBean.content}">
<rich:panelMenuItem label="someLabel_navi" name="path/to/page-not-getting-rendered-well.xhtml"/>
</rich:panelMenuGroup>
</rich:panel>
</h:form>
</ui:component>
これが私を助けるのに役立つことを願っています。