selectBooleanCheckbox в DataTable в пользовательском интерфейсе: повторить

У меня возникли проблемы с использованием нескольких selectBooleanCheckBox в нескольких DataTables в ui:repeat.

Что-то вроде этого

<ui:repeat var="f" value="#{mybean.values}">
    <rich:dataTable value="#{f.values}" var="v">
        <rich:column>
            <h:selectBooleanCheckbox value="#{mybean.selected[v.id]}"/>
        </rich:column>
    </rich:dataTable>
</ui:repeat>

В фоновом компоненте на выбранной карте я обнаружил неправильные идентификаторы.

Другое странное поведение заключается в том, что когда я сортирую столбец с помощью атрибута sortBy, он сортирует все отображаемые столбцы.

Я нашел ошибку в jira

RichFaces JIRA

Если я использую

<c:forEach />

тег вместо

<ui:repeat />

Это немного лучше (нет сортировки между таблицами, больше значений правильно в компоненте поддержки), но иногда это все еще неправильно.

Любые идеи?

Спасибо,


person Luca Molteni    schedule 06.07.2009    source источник
comment
Какие идентификаторы вы получаете (т.е. это все тот же самый)?   -  person Damo    schedule 06.07.2009
comment
Нет, это не так. Каждая строка имеет свой идентификатор. Спасибо.   -  person Luca Molteni    schedule 06.07.2009


Ответы (2)


Попробуйте использовать a4j:repeat.

У меня часто возникают проблемы с обновлением значений на бэкенде с помощью Richfaces из ui:repeat (хотя обычно с a4j:commandLink/commandButton).

РЕДАКТИРОВАТЬ: И у вас есть четко определенные equals() и hashcode() для класса, который вы добавляете в список/набор?

person Damo    schedule 06.07.2009
comment
Большое спасибо за совет, к сожалению проблему не решил. - person Luca Molteni; 06.07.2009
comment
Да, я его определил, но проблема в ричфейсах, значения в бэк-бине неверны. Думаю, это больше похоже на проблему взаимодействия с расширенной моделью данных. - person Luca Molteni; 07.07.2009

Я решил упорядочить значения, так как я привязывался к набору. Я использовал SortedSet. Спасибо, в любом случае.

person Luca Molteni    schedule 20.07.2009