Jsf 2 通过同名的f:viewParam绑定使用f:param中的值更新Bean
使用此代码:Jsf 2 通过同名的f:viewParam绑定使用f:param中的值更新Bean,jsf-2,mojarra,viewparams,Jsf 2,Mojarra,Viewparams,使用此代码: <f:metadata> <f:viewParam name="aParameter" value="#{myBean.aParameter}" /> </f:metadata> ... <h:commandLink value="commandLink" action="#{myBean.navigate()}"> <f:param name="aParameter" value="TEST" />
<f:metadata>
<f:viewParam name="aParameter" value="#{myBean.aParameter}" />
</f:metadata>
...
<h:commandLink value="commandLink" action="#{myBean.navigate()}">
<f:param name="aParameter" value="TEST" />
</h:commandLink>
...
当我使用commandLink提交时,myBean.apaparameter由viewParam(在调试中看到)更新,其值在更新_模型阶段来自f:param
这正常吗
是的,我知道viewParam和param有相同的名字,我没有选择
我使用Mojarra 2.1.27我想我拼凑出了它正常的原因:
- 到服务器(我不这么认为),并且是requestParametersMap的一部分
- ,即使是回邮
- f:viewParam然后使用requestParametersMap中的内容更新其值
- 如果requestParametersMap恰好有与viewParam名称对应的键,则viewParam将执行其操作(使用该值更新模型)
但我不知道为什么我的问题出现在mojarra 2.1.27上,而在2.1.25上似乎一切正常。嗯……是的,这很正常。这里到底有什么问题?viewParam使用url中的一个值绑定myBean.apaParameter,f:param是commandLink的子项,我还没有发现两者都可以链接的线索。你能给我指一份这样写的推荐信吗?