У меня есть форма, где я должен заполнить 3 столбца таблицы данными. К каждому из этих столбцов прикреплен ArrayList из базового компонента. Каждый из ArrayLists содержит одинаковое количество экземпляров одного и того же типа «LabValue». У каждого LabValue есть имя («Параметр») и единица измерения («Einheit»), но мне нужны оба столбца только один раз для первой таблицы данных (рисунок ниже).
Поскольку h:datatable
может содержать только один список, до сих пор я решил проблему, поместив три таблицы данных в один ряд h:panelgrid
, как показано на рисунке ниже:

Это работает нормально, но у нас есть некоторые проблемы с нашими тестами в разных браузерах: иногда мы имеем вертикальное смещение между Datatable1 с одной стороны и Datatable2 & 3 с другой стороны (например, Chrome и Firefox работают нормально; Safari нет).
например. Safari отображает заголовок данных 2 и 3 в четырех строках и один в трех строках (на рисунке это не показано). Это приведет к смещению.
Таким образом, наилучшим способом было бы объединить их в один элемент данных и, наконец, избавиться от смещения.
Есть ли способ сделать это в JSF 2.0 без введения нового класса, содержащего все три списка?