Ответ 1
Управляемый JSF bean - это клей (контроллер) между сущностью (моделью), страницей JSF (представление) и корпоративным bean (бизнес-службой).
Итак, да, вы в основном правы в своем понимании, что на странице JSF должен вызываться управляемый метод действия bean, который должен, в свою очередь, делегировать модель и действие дальше бизнес-службе и в конечном итоге обрабатывать результаты навигации на основе результат вызова службы.
Но вы не совсем правы в том, как модель должна использоваться и передаваться. Обычно вы делаете модель свойством управляемого bean, чтобы вы могли просто привязать ее к элементам ввода формы и, наконец, передать ее без изменений в бизнес-службу.
например.
<h:inputText value="#{registrationController.car.make}" />
<h:inputText value="#{registrationController.car.model}" />
<h:inputText value="#{registrationController.car.year}" />
<h:commandButton value="Save" action="#{registrationController.save}" />
с
private Car car;
private @EJB CarFacade carFacade;
public RegistrationController() {
this.car = new Car();
}
public String save() {
carFacade.create(car);
return "someoutcome";
}
// ...