最佳答案
这样定义视图参数有什么不同:
<f:metadata>
<f:viewParam name="id" value="#{someBean.id}"/>
</f:metadata>
在 ManagedBean 中定义属性如下:
@Inject @ManagedProperty(value = "#{param.id}")
private Integer id;