Я хочу реализовать что-то подобное с помощью JSF. (Часть экрана поиска)
Все больше новых строк будут добавляться динамически при нажатии кнопки « + », а строка удаляется при нажатии кнопки « - ». Вопрос в том, чтобы связать значения (пользовательский ввод в этих динамически создаваемых строках) с базовой моделью.
Я создал сессионный компонент поддержки сессий. Некоторые части кода,
public class BackingBean{
//other code
private List<Criteria> searchFilters; // Each criteria is bound to a row
public void init(){
//init code
}
public void addEmptyCriteria(){
searchFilters.add(MyFactory.createNewCriteria());
}
}
Действие кнопки + вызывает метод addEmtpyCriteria и повторно отображает (используя a4j) весь раздел (с новыми строками).
Это просто шаблон, и все работает нормально, пока боб находится в области сеанса. Но более интуитивно понятно иметь его в объеме запроса. Один поиск - это один запрос, сделанный пользователем и никоим образом не связанный с сеансом пользователя. Кроме того, наличие его в сеансе вынуждает разработчика очистить / удалить основу из порядка сеансов для отображения нового экрана поиска.
Есть ли лучший способ сделать это? Правильно ли иметь его в рамках сеанса?