0
使用JSF 2.0和Spring,我使用的托管bean为@RequestScope
。这个bean存储关于登录用户的信息。它加载从DB用户在@PostConstruct
方法:然后JSF生命周期 - 在请求完成后执行托管bean方法
@PostConstruct
public void init() {
String username = login.getUsername();
user = userDao.load(username);
}
的登录用户可以对更新数据库的用户页面上的动作触发(使用另一个托管bean)。
然而,@RequestScope
豆在所述请求,该请求是之前呼叫到更新动作的开始构成。因此,当页面重新显示时,User
变量仍然具有其旧值。
我的问题是:我是否有办法在请求开始时不运行我的加载方法,但之后的请求已发送?还是我以错误的方式处理这个问题?然后
感谢您的洞察力,
塞巴斯蒂安
实际上,似乎发生的是Request bean已创建,然后调用另一个托管bean并注入_another_ Request bean。然后我修改并设置了我的用户的新值,但它对我的初始请求对象没有任何影响。有没有办法将初始请求对象传递给我的其他管理器bean,或者检索它? – 2011-01-27 19:28:34