Необходимо убедиться, что #{myentityListView.someList}
возвращает точно то же значение во время запроса на отправку формы, как и во время запроса на отображение страницы. Помещение bean-компонента в область просмотра (просто отметьте его @ViewScoped
) и обеспечение того, что вы сохраняете список во время (post) конструктора или в методе действия, должны исправить это.
Смотри также:
Тем не менее, в вашем конкретном случае гораздо лучше просто использовать <h:link>
, поскольку вам, похоже, вообще не нужно отправлять запрос POST. Таким образом, вы получите замечательные закладки и ссылки для поисковых роботов.
<ui:repeat var="entity" varStatus="status" value="#{myentityListView.someList}">
<h:form>
<h:link value="Go!" outcome="mypage.xhtml">
<f:param name="userId" value="#{entity.user.id}" />
<f:param name="productId" value="#{entity.product.id}" disable="#{entity.entityType != 'Comment'}" />
</h:link>
</h:form>
</ui:repeat>
Также обратите внимание, что я исправил ваш <c:if>
подход, удалив его, так как он не будет работать так, как вы ожидаете. Это всегда будет оценивать false
. Смотрите также JSTL в JSF2 Facelets ... имеет смысл?
Смотри также: