Замена для пружинной формы тега в лицевых - PullRequest
0 голосов
/ 09 октября 2011

, поскольку я знаю, что не могу использовать библиотеку тегов Spring в Facelets, мне интересно, кто-нибудь может сказать мне, что я должен использовать вместо

<sf:form method="POST" modelAttribute="spitter">
.....
</sf:form>

Где префикс sf относится (только в JSP):

<%@ taglib prefix="sf" uri="http://www.springframework.org/tags/form" %>

Мне очень нравится идея этой формы, что она связывает все свойства непосредственно с modelAttribute объектом. Есть ли вероятность, что <h:form>...</h:form> может сделать то же самое? Или есть другой тег, который может с этим справиться?

Я не могу использовать JSP, потому что я хочу использовать PrimeFaces.

Я только начинающий в J2EE, поэтому, пожалуйста, будьте терпеливы:)

Заранее спасибо

1 Ответ

0 голосов
/ 09 октября 2011

Да, <h:form> делает то же самое. Несмотря на то, что подход JSF немного отличается, конечный результат аналогичен: с помощью Spring объект передается, а с JSF значения полей попадают в управляемый компонент. Вам просто нужно будет использовать

<h:inputText value="#{bean.property}" />

(где bean - это @ManagedBean -аннотированный класс (для jsf2) или объявленный в Face-Config (для jsf1))

Это отличие состоит в том, что форма spring отправляется на целевой URL, и spring находит целевой метод на основе сопоставления, а здесь вы указываете, какой метод управляемого компонента вызывать в вашем <h:commandButton />

...