2011-09-30 66 views
0

我有两个具有一对一关系的实体,即客户和CustomerDetails映射到其特定的表。如何使用EnitityHome persist方法在SEAM中坚持子实体?

我在页面中有一个窗体,可以捕获每个实体属性的每个值。

我该如何坚持这个在SEAM? 因为我的命令按钮仅指向该CustomerHome.persist()

我做什么是我的形式值分配给为CustomerDetails的财产像

value="#{customerHome.intance.customerDetails.address}" 

一个动作的方法,但我得到customerDetails解析为null的错误。

另一个工作是在我的CustomerHome persist方法中存在两个persist方法,这两个方法坚持这两个实体,但我得到另一个错误,即在调用save之前必须先指定CustomerDetails的ID。

有没有人可以让我清楚这件事? 我是全新的SEAM。

回答

0

你用缝根?

尝试一下通过缝根

产生他们用“线”方法来初始化关系的项目。

基本上创建您的实例,确保所有关系都指向它们各自的fooHome.instance对象。

然后在你坚持的方法中,你首先调用关系的EntityHome的持久化方法。

+0

不,我没有使用seam gen,我手动从Jboss Dev工作室启动项目。我会试着研究你所说的电线。谢谢.. ^^ –

+0

我解决了我的问题..感谢您的帮助。它的线方法。:) –

0

如果你直接从你的IDE复制的代码,那么错字可能是你的问题的原因:

value="#{customerHome.intance.customerDetails.address}" 

应该

value="#{customerHome.instance.customerDetails.address}" 
+0

实际上问题是我得到的对象解析为null当我参考子实体..没有错字错误。:) –