这个问题已经在 MYFACES 2.1 实现中解决了
我有一个正确传递整数参数的链接,如下所示:
<h:link outcome="/process/createProcess">
<f:param name="id" value="#{process.idprocess}" />
Edit
</h:link>
它正确地转到“createProcess.xhtml?id=21”,并且我在支持 Bean createProcess 的请求范围中有此代码:
@ManagedProperty(value="#{param.id}")
private Integer idProcess;
private Process newProcess;
@PostConstruct
public void init()
{
log();
if (idProcess!=null)
newProcess = Dao.getProcessDAO().get(idProcess);
else
newProcess = new Process();
}
我注意到它idProcess
始终为空。调试后我意识到 setIdProcess 方法被称为AFTER @PostConstruct
。
我知道注入是在构建 bean 之后完成的,并且所有 managedProperties 都可以在@PostConstruct
.
我错过了什么?