我有一个奇怪的行为:我的方法注释@PostConstruct
被调用两次。JSF 2 @PostConstruct方法调用两次
调试它,我看到我的搜索页面在调用命令链接的动作方法mbean.edit
之前调用它。我的豆MBeanSearch
是请求范围,我的MBean
是视图范围。
我的看法search.xhtml:
<h:commandLink value="#{var.value}" action="#{mbean.edit}">
<f:param name="id" value="#{var.id}"/>
</h:commandLink>
我也得到了一个目标视图var.xhtml。
从我MBean
豆相关摘录:
public String edit() {
return "/pages/var.xhtml";
}
@PostConstruct
public void initialize() { }
有了这个代码,我@PostConstruct
是我的编辑方法后调用以后再次调用。
我认为我以错误的方式使用@PostConstruct
(我认为MBean
需要在任何方法之前启动)。但是,在与搜索页面不同的页面中编辑对象的替代方法是什么?
我们需要附加信息来追踪问题。事实上,Michi的解释是最可能的解释。 – skuntsel 2013-04-27 08:50:12