当URL中没有参数时,将f:viewParam属性设置为null

kar*_*kpl 5 jsf-2 viewparams

假设我们得到了一个接受一个参数的简单页面:

<f:viewParam name="name" value="#{bean.name}"/>
Run Code Online (Sandbox Code Playgroud)

当用户进入时http://localhost/myapp/?name=Joe,则#{bean.name}设置为Joe.然后,如果用户去http://localhost/myapp/http://localhost/myapp/?something=Else,然后#{bean.name}仍然设置Joe,但我希望它null.怎么做到这一点?

Bal*_*usC 1

对它所保存的数据使用正确的托管 bean 范围。您显然已将其放入会话范围内。将保存参数的 bean 放在请求或视图范围而不是会话范围中,并且在使用视图范围时,请确保在执行操作时通过普通链接或 post-redirect-get 进行导航。

也可以看看: