我希望将我的JSF 2.1 / Java EE应用程序模块化。我有一个页面,由多个模块组成。每个模块应该使用单独的JSF Backing Bean。其中一些模块需要显示和更改来自/在同一实体上的某些数据。
我已经尝试过一些方法,但到目前为止还不满意。我想知道最好的做法是什么?
所有模块都使用相同的实体,并且它们(可能)需要通知其他Backing Bean如果某些数据发生了变化。
对我已经尝试过的一些方法的评论:
- 通过接口将实体传递给我的组件(XHTML)将不会将其传递到Backing Bean。 - 通过从请求参数中读取ID在bean的postContruct方法中加载实体通常不被鼓励,而应使用"viewParam"方法。 - 使用“viewParam”不如在bean创建后(在我的postConstruct中)拥有实体好。我不确定何时调用bean的setter。
我已经尝试过一些方法,但到目前为止还不满意。我想知道最好的做法是什么?
所有模块都使用相同的实体,并且它们(可能)需要通知其他Backing Bean如果某些数据发生了变化。
对我已经尝试过的一些方法的评论:
- 通过接口将实体传递给我的组件(XHTML)将不会将其传递到Backing Bean。 - 通过从请求参数中读取ID在bean的postContruct方法中加载实体通常不被鼓励,而应使用"viewParam"方法。 - 使用“viewParam”不如在bean创建后(在我的postConstruct中)拥有实体好。我不确定何时调用bean的setter。
@SessionScoped
/@ApplicationScoped
托管的 bean。关于通知的 bean,你需要更具体地说明。 - Aritz