У меня есть веб-страница, которая содержит список панелей внутри цикла jstl forEach. Все панели сворачиваются при загрузке страницы. При расширении каждой панели я сохраняю свернутое состояние в bean-компоненте, чтобы ссылаться на него позже. Я обновляю панель из p: commandLink, но панели отображаются расширенными на основе предыдущего индекса, а не значения bean. Мое требование состоит в том, что свойство свернутой панели должно обновляться в соответствии с ранее установленным значением bean-компонента, в настоящее время панели расширяются в соответствии с индексом ранее развернутых панелей, а не в соответствии со значением свойства bean-компонента.
Просто взгляните на фрагмент кода.
<h:form id="form">
<c:forEach items="#{items}" var="name">
<p:panel header="#{name}" toggleable="true"
toggleTitle="#{bean.toggleStatus.get(name)}"
collapsed="#{bean.toggleStatus.get(name)}" toggleSpeed="500"
id="panel#{name}" widgetVar="panel#{name}">
<h:outputText value="#{name}"/>
</p:panel>
</c:forEach>
<p:commandLink id="Search" style="margin-left :5px;"
action="#{bean.search}" update="form" ajax="true"/>
</h:form>