IはHを拡張するJSF複合コンポーネントを作成した:INPUTBOXJSF複合部品のID
<p class="label clear">
<label for="#{cc.attrs.id}" class="">
#{cc.attrs.label}:
</label>
</p>
<p>
<h:inputText id="#{cc.attrs.id}" value="#{cc.attrs.value}"
size="#{cc.attrs.size}" />
<ui:fragment rendered="#{cc.attrs.optional eq 'optional'}">
<span class="optional">Optional</span>
</ui:fragment>
</p>
このコンポーネントを使用する..
<my:inputText id="firstName" label="First Name" value="#{nameTO.firstName}"/>
このコンポーネントがブラウザに描画されている場合、IDは"firstName:firstName"という形式のものである。
<input type="text" value="" name="firstName:firstName" id="firstName:firstName" gtbfieldid="3028">
これはJSF 2.0テンプレートの標準命名規則ですか?私はJSF 1.2 Faceletsテンプレートでこれを取得しませんでした。 "firstName:firstName"ではなく "firstName"としてIDを生成する方法はありますか