Ответ 1
Звучит так, как если бы вы связали модель с контроллером, как показано в большинстве основных руководств JSF. Вы должны отделить модель от контроллера в своем классе. Поскольку вы используете EJB, вероятность того, что вы также используете JPA (как еще EJB действительно полезны для сохранения?), Вы можете просто использовать существующий класс JPA @Entity
как модель.
например.
@Entity
public class Product {
@Id
private Long id;
private String name;
private String description;
private Category category;
// ...
}
с
@ManagedBean
@ViewScoped
public class ProductController {
private Product product;
@EJB
private ProductService service;
public void save() {
service.save(product);
}
// ...
}
который должен использоваться как
<h:form>
<h:inputText value="#{productController.product.name}" />
<h:inputTextarea value="#{productController.product.description}" />
<h:selectOneMenu value="#{productController.product.category}">
<f:selectItems value="#{applicationData.categories}" />
</h:selectOneMenu>
<h:commandButton value="Save" action="#{productController.save}" />
</h:form>