Как использовать связывание компонентов в JSF правильно? (компонент в области запроса в компоненте сеанса)
Мохара 2.1.21
Я обновил свой вопрос на основе комментариев. У меня есть две ситуации, когда компонент связан с компонентом сеанса сервера. (Дополнительные ссылки с информацией:Атрибут Binding приводит к дублированию идентификатора компонента, найденного в представлении а такжеhttps://stackoverflow.com/a/12512672/2692917)
Версия 1:
single.xhtml:
<h:outputText value=... binding="#{mysessionbean.out}" />
Ява:
@SessionScoped @Named public class Mysessionbean {
UIOutput out;
//getter and setter ....
}
Версия 2:
template.xhtml:
<h:outputText value=... binding="#{mysessionbean.out}"
view1.xhtml:
<ui:composition template="template.xhtml" />
view2.xhtml:
<ui:composition template="template.xhtml" />
Ява:
@SessionScoped @Named public class Mysessionbean {
UIOutput out;
//getter and setter ....
}
Версия 1 в порядке. (По крайней мере, я пока не встречал ошибок). Но в версии 2 возникает ошибка дублирования идентификатора, если я перехожу с одной страницы на другую. Почему это происходит? Безопасно ли использовать (в рамках запроса) компонент (в версии 1) с привязкой в рамках сеанса? Есть ли другие варианты использования для рассмотрения?
Редактировать:Функциональное требование 1:
Я хочу использовать Primefaces datatable в представлении. Мне нужна информация из этого источника данных. (Например, выбранная строка или индекс строки). Таким образом, привязка данных помогает мне получить эту информацию.
Функциональное требование 2:
Связывание компонентов в составных компонентах. Они будут привязаны к сессионному компоненту. (И используется в основном на одной странице, но что, если я использовал его на другой странице?
Требования 3
Ситуация как в "Версии 2". Шаблон с меню простых лиц и привязкой к сессии. Для этого я использовал EL-Binding.