【发布时间】:2012-01-17 19:24:13
【问题描述】:
实体是在何时何地创建的?
它们是在 XHTML 页面加载并通过托管 bean 访问实体时创建的吗?
还是在托管 bean 中自动创建它们?
我们是否需要从托管 bean 的构造函数中手动创建它?
请看下面的代码(一些必要的代码可能没有复制。)
实体将是:
public class PersonalInfo implements Serializable {
@Size(max = 50)
@Column(name = "FIRST_NAME", length = 50)
private String firstName;
// some getters and setters
}
网页将是:
<h:form>
<h:outputText value="first name"/>
<h:inputText value="#{personalInforController.personalInfo.firstName}" />
<h:commandButton value="hit me"
action="#{personalInforController.create}"
immediate="true"/>
</h:form>
支持 bean 将是:
@Named(value = "personalInfoController")
@SessionScoped
public class PersonalInforController {
@EJB
PersonalInfoFacade ejbFacade;
PersonalInfo personalInfo;
String defaultPage = "index";
public String create() {
try {
ejbFacade.create(personalInfo);
return "prepareCreate";
} catch (Exception e) {
return "success";
}
}
}
【问题讨论】: