私は以下の複合コンポーネントを使用しています:
<composite:interface>
<composite:attribute name="inputId" />
</composite:interface>
<composite:implementation>
<h:panelGrid id="myTableId">
<h:inputText id="#{cc.attrs.inputId}" value="..." />
...
</h:panelGrid>
</composite:implementation>
そして、私はそれを私の形で以下のように使用しています:
<h:form id="myForm">
<myCompositeComp:test inputId="myInputTextBoxId" />
<h:form>
ページのビューソースを確認しました。これが生成方法です。
<table id="myForm:j_idt90:myTableId">
...
<input type="text" id="myForm:j_idt90:myInputTextBoxId" />
</table>
どうすればここを取り除くことができj_idt90
ますか?それid
は私の複合コンポーネントのものですか?BalusCの投稿の1つからid
、静的として宣言するとこの問題が修正されることを読みました。しかし、コードで宣言する場所を特定できません。<h:panelGrid>
また、私は一種であると仮定できUINamingContainer
ますか?