Primfaces 6.2 с Serenity (проблема с данными)

Заголовок ##Мы используем Primefaces 6.2 с JSF2.1.0.

наше определение datatable выглядит следующим образом в xhtml.

<p:dataTable id = "dataTable" var = "datatable" style = "min-height:450px !important;"
             widgetVar = "searchDataTable" resizableColumns = "false" paginatorAlwaysVisible = "false"
             styleClass = "ui-datatable-ver-scroll datatable-wrap-column" 
             filteredValue = "#{advSearchAction.filteredSearchList}"
             value = "#advSearchAction.searchValueBeanLazyDataModel}" paginator = "true" 
             rowKey = "#{datatable.ROWID}" filterEvent = "change" rows = "#{sessionScope['SRGRID_ROWS']}"
             lazy = "true" selection = "#{advSearchAction.selectedRecordArr}" 
             paginatorTemplate = "{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
             rowsPerPageTemplate = "# {commonmsg.searchDataTable$rowsPerPageTemplate}" 
             paginatorPosition = "bottom">

Здесь все данные успешно заполняются в таблице данных, и если мы выбираем строку данных, то возникает исключение нулевого указателя.

См. ошибку ниже.

15:15:10,441 INFO [javax.enterprise.resource.webcontainer.jsf.context] (http-localhost-127.0.0.1-85-2) java.lang.NullPointerException: java.lang.NullPointerException at com.iii.orn11j.advsearch.SearchValueBeanLazyDataModel.getRowData(SearchValueBeanLazyDataModel.java:67) [classes:] at com.iii.orn11j.advsearch.SearchValueBeanLazyDataModel.getRowData(SearchValueBeanLazyDataModel.java:1) [classes:] at org.primefaces.component.datatable.DataTable.getRowData(DataTable.java:1445) [primefaces-6.2.jar:] at org.primefaces.component.datatable.feature.SelectionFeature.decodeSingleSelection(SelectionFeature.java:75) [classes:] at org.primefaces.component.datatable.feature.SelectionFeature.decode(SelectionFeature.java:57) [classes:] at org.primefaces.component.datatable.DataTableRenderer.decode(DataTableRenderer.java:71) [primefaces-6.2.jar:] at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:787) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]

Мой вызов метода SearchValueLazyBeanDataModel выглядит следующим образом:

@Override
public SearchValueBean getRowData(String rowKey) {
    final List<SearchValueBean> rows = (List<SearchValueBean>)getWrappedData();

    for (SearchValueBean SearchValueBean : rows) {
        if (SearchValueBean.getROWID().equals(rowKey))
            return SearchValueBean;
    }

    return null;
}

Здесь приходит rowid, переданный из xhtml, и во время метода decodeSingleSelection() класса SelectionFeature метод данных getRowData() возвращает значение null, а из вызывающей части выдается исключение NullPointerException.

Примечание: мы настроили файл SelectionFeature.java файла jar и ниже приведена ошибка моего кода при отладке.

void decodeSingleSelection(DataTable table, String selection) {
    if (ComponentUtils.isValueBlank(selection)) {
        table.setSelection(null);
    } else {
        table.setSelection(table.getRowData(selection));
    }
}

Может ли кто-нибудь помочь мне в этом отношении.

Итак, если вы не используете безмятежность, это работает? А с PF 6.1 или 7.0RC1 работает?

Kukeltje 04.02.2019 13:03

Прочтите Как спросить и минимальный воспроизводимый пример. И ошибка возникает в методе класса, который, как вы говорите, вы настроили, но вы не показываете этот код? И вы отлаживали, где именно возвращается «ноль», что приводит к NPE? Пожалуйста, сузьте причину и улучшите код в вопросе. В противном случае помочь практически невозможно

Kukeltje 04.02.2019 13:06

Да . Он работает нормально без спокойствия.

Senthil 04.02.2019 13:11

То есть вы отлаживали запросы от клиента к серверу с сереном и без и не заметили никаких отличий? И что такое ноль? Сузьте это

Kukeltje 04.02.2019 13:24

Никаких различий я не нашел. Но table.getRowData(selection) возвращает нулевое значение и кажется, что в Datatable нет данных.

Senthil 04.02.2019 13:38

Затем попробуйте найти, где он установлен (среда IDE сможет найти ссылки), установите точку останова и посмотрите, не установлена ​​ли она при использовании безмятежности, но установлена, когда она не используется... отладка...

Kukeltje 04.02.2019 13:40

На экране я вижу данные, доступные в таблице данных. но когда дело доходит до SelectionFeature, он теряет данные. То же самое работает в 5.2 без спокойствия

Senthil 04.02.2019 13:43

это отлаживается с помощью IDE (Eclipse)

Senthil 04.02.2019 13:47

Затем проверьте/отладьте, что устанавливает его на ноль... И где... И отображение - это другое действие, чем отправка... А 5.2 без безмятежности? Как насчет 6.2 без безмятежности

Kukeltje 04.02.2019 14:05

И еще... минимальный воспроизводимый пример пожалуйста.... Также читайте stackoverflow.com/tags/jsf/info

Kukeltje 04.02.2019 14:06

А если вы сомневаетесь, действительно ли вы считаете, что это проблема Serenity, спросите на форуме Serenity: forum.primefaces.org/viewforum.php?f=73

Melloware 04.02.2019 16:33

Удалив банку безмятежности, у вас возникла такая же проблема. так что не надо общаться безмятежность форума. Спасибо

Senthil 05.02.2019 06:07
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
12
100
0

Другие вопросы по теме