使用 JSF 2.2 时在每个回发请求上重新创建 @ViewScoped bean [英] @ViewScoped bean recreated on every postback request when using JSF 2.2
本文介绍了使用 JSF 2.2 时在每个回发请求上重新创建 @ViewScoped bean的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我遇到了类似于 这篇文章和@BalusC的回答,有3个解决方案,但是:
- 我没有使用提到的 EL 表达式
- 我不想采用第二种解决方案(它对我来说已经足够复杂了)
- 并且部分状态保存设置为 false.
我的代码如下:
index.xhtml
:
<html xmlns="http://www.w3.org/1999/xhtml"xmlns:h="http://java.sun.com/jsf/html"xmlns:p="http://primefaces.org/ui"xmlns:ui="http://java.sun.com/jsf/facelets"xmlns:f="http://java.sun.com/jsf/core"><h:头><title>在此处插入标题</title></h:head><h:body><h:形式><p:panelMenu id="westMenu"><p:submenu id="sub1" label="系统监视器"><p:menuitem id="menu1" value="实时监控"action="#{menusBean.activateMenu('sub1_menu1')}"更新=":centerPane,westMenu"disabled="#{menusBean.active['sub1_menu1']}"/><p:menuitem id="menu2" value="reports"action="#{menusBean.activateMenu('sub1_menu2')}"更新=":centerPane,westMenu"disabled="#{menusBean.active['sub1_menu2']}"/></p:子菜单><p:submenu id="sub2" label="充电系统节点"/><p:submenu id="sub3" label="其他节点"/></p:panelMenu></h:form><h:panelGroup id="centerPane">...</h:panelGroup></h:body>