Можно ли повторно использовать форму в двух разных представлениях в JSF?Я знаю о ui:include, но как бы вы поступили с действием, например, над кнопкой отправки?Или мне нужно дублировать формы?
ui:include
При использовании <ui:include> вы можете параметризовать компонент и / или метод с помощью <ui:param>.
<ui:include>
<ui:param>
<ui:include src="..."> <ui:param name="bean" value="#{someBeanName}" /> <ui:param name="action" value="someMethodName" /> </ui:include>
с помощью
<h:commandButton ... action="#{someBeanName[someMethodName]}" />
Вы также можете сделать его тегом Facelets.вместо этого файла, чтобы вы получили что-то вроде
<my:someForm bean="#{someBeanName}" action="someMethodName" />
Составной компонент также выполним, но IMO не действительно правильный подход для этой цели.
Вы хотите использовать композитные компоненты. Эти компоненты могут быть параметризованы так, чтобы вы могли обмениваться компонентом поддержки и т. Д.
У IBM есть несколько хороших руководств по этой теме.
Композитные компоненты, часть 1 + 2 и лучшие практики.