我认为这是一个JSF基本问题,但我只是需要说明一点..JSF基本问题
我有一个登录页面,在这里我有一个链接到一个网页的createAccount:
现在<div
id="TGOV_popAccount"
style="float: left; margin-left: 60px !important;"><a
href="/createAccount.jsp">Create Account</a></div>
,这个jsp页面中打开一个JSF的facelet一个(是的,丑陋的设计):
createAccount.jsp:
<jsp:forward page="/WEB-INF/jsf/account/createAccount.jsf" />
所以现在,这个createAccount.jsf有一个CreateAccountBean作为与request
作用域的支持bean。 第一次我去创建帐户页面的构造函数调用init方法(出于某种原因,@PostConstruct不会自动调用,这就是为什么我从构造函数中调用它...也许是因为那个jsp向前?)
public CreateAccountBean() {
init();
}
@PostConstruct
public void init() {
userLoginVo = new UserLoginVo();
logger.info("init called");
}
如果再次打开我的登录页面,再次去的createAccount页面中,init不再叫我不明白为什么...有一个请求范围,应该在这种情况下重新初始化,对不对?
你能解释我为什么失败?
谢谢。