Я прочитал предыдущий пост: Переменная 'JSF' total 'что-то вроде c: set в JSTL .Хотя ответ предполагает, что общее количество должно исходить от поддерживающего бина, мне действительно нужно сделать это в фейслете.В моем случае я хочу отобразить тип данных банковской книги с каждой строкой, состоящей из даты, описания, суммы и промежуточного итога .Данные получены из JPA get типа List .Если я выполнил суммирование в бэк-бине, то мне нужно перебрать List, создать модель данных исключительно для цели свойства итоговой суммы.Это действительно неэффективно.
Я пытался:
<c:set var="sum" value="0.0" scope="view" />
<table>
<ui:repeat value="#{xxxBean.items}" var="item">
<tr>
<td><h:outputText value="#{item.date1}" /></td>
<td><h:outputText value="#{item.desc}" /></td>
<td><h:outputText value="#{item.amount}" /></td>
<c:set var="sum" value="${sum+item.amount}"/>
<td><h:outputText value="${sum}" /></td>
</tr>
</ui:repeat>
</table>
, но это не работает, $ {sum} сбрасывается в ноль для каждой строки.Есть ли другой способ, кроме создания собственного компонента?