这是我的代码:
<h:selectOneMenu value="#{statistic.currentChoice}"
onchange="submit()"
valueChangeListener="#{statistic.changedCurrentChoice}"
id="statistic_type">
<f:selectItems value="#{statistic.statisticChoices}" />
</h:selectOneMenu>
提交表单后选择项目并刷新页面两次。到现在为止还挺好。如果我在选择菜单中进一步重新选择另一个项目,则此次刷新页面会导致错误:
Component ID nav_panel-nav_item0 has already been found in the view
被抛出。 nav_panel-nav_item0 ID来自另一个header.xhtml
文件
<h:form id="nav" styleClass="nav" rendered="#{data.showMenu}">
<t:panelNavigation2 id="panel-nav" expandAll="true">
<t:navigationMenuItems value="#{data.menuItems}" />
</t:panelNavigation2>
</h:form>
包含在XHTML文件中,其选择菜单如下:
<ui:composition template="header.xhtml"
要了解页面刷新的频率,我在system.out.print
数据方法中使用getMenuItems()
。
为什么页面会经常刷新? 或者为什么抛出重复的ID错误。