4
4

1 に答える 1

8

次の条件が満たされた場合にのみ、HTML 要素はパススルー要素になります。

  1. 名前空間から少なくとも 1 つのjsf:xxx属性があります。http://xmlns.jcp.org/jsf
  2. 特定の JSF コンポーネントに関連付けられた「識別属性」が少なくとも 1 つあります。

要素には、 JSF がそれを、または<a>として解釈するかどうかを決定できるように、識別属性が必要です。識別属性がないと、JSF は実際に使用するコンポーネントを認識できないため、属性は無視されます。はすべての単一の JSF コンポーネントに表示されるため、識別属性としては十分ではありません。<h:commandLink><h:outputLink><h:link>jsf:xxxjsf:rendered

を持っているつもりだと思われる場合は、識別属性として<h:link>使用します。jsf:outcome

<a jsf:outcome="login" jsf:rendered="#{empty sessionBean.userInSessionBean}">Login</a>

まったく別の代替手段は、プレーンな HTML を .xml でラップすること<ui:fragment rendered>です。<div> のような単純な HTML 要素を条件付きでレンダリングする方法も参照してください。

于 2016-02-26T08:37:18.763 に答える