2009-07-06 4 views
0

У меня возникла проблема с использованием нескольких selectBooleanCheckBox в нескольких таблицах данных в ui: repeat.selectBooleanCheckbox в DataTable в 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 /> 

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

Любые идеи?

Спасибо,

+0

Какие идентификаторы вы получаете (т. Е. Все ли одно)? – Damo

+0

Нет, это не так. Каждая строка имеет другой идентификатор. Благодарю. –

ответ

0

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

1

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

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

EDIT: И у вас есть хорошо определенные equals() и hashcode() для класса, который вы добавляете в список/набор?

+0

Большое спасибо за совет, к сожалению, это не решило проблему. –

+0

Да, я определил его, но проблема в богатых интерфейсах, значения в бэк-файле ошибочны. Я думаю, что это больше похоже на проблему с использованием модели расширенных данных. –