アプリケーションを JSF1.2/MyFaces+Facelets から JSF2.1/MyFaces に移行しています。JSF1.2/MyFaces+Facelets で使用されていた次のテンプレートがあります。
<ui:component>
<f:subview id="#{id}">
.
.
<script
function blockLinkClicks(){
//Disables all the HyperLink Controls to prevent repeated submits
var allLinks = document.getElementById("#{id}:treeNodeForm").getElementsByTagName('a');
var count = allLinks.length;
.
.
</script>
.
.
.
<h:form id="treeNodeForm">
<h:panelGroup id="treePanelId">
<t:tree2 id="tree2Id"
value="#{treeBean.treeModel}" var="node" varNodeToggler="t"
binding="#{treeBean.component}" clientSideToggle="false" showNav="false">
<f:facet name="selectableNode">
<h:panelGrid id="tree2PGridSelNodeId" columns="3" cellpadding="0" cellspacing="0" border="0">
.
.
.
移行後、次のエラーが発生します。
java.lang.IllegalStateException: org.apache.myfaces . view.facelets.compiler.CheckDuplicateIdFaceletUtils.checkIds(CheckDuplicateIdFaceletUtils.java:116)
ここSOで同様の質問を見つけましたが、上記の問題で解決策を関連付けることができませんでした。何日も何時間も解決策を見つけようとしましたが、できませんでした。
問題が f:subview または t:tree2 または jsf2 facelets にあるのかどうかわからないので、修正のために試すことができるアドバイスとポインターを手伝ってください。
事前にどうもありがとうございました。
よろしく、クマール。