Я думаю, что это основной вопрос 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
. в первый раз Я иду на страницу создания учетной записи, конструктор вызывает метод init (по какой-то причине @PostConstruct не вызывается автоматически, поэтому я вызываю его из конструктора ... может быть, из-за этого jsp forward? )
public CreateAccountBean() {
init();
}
@PostConstruct
public void init() {
userLoginVo = new UserLoginVo();
logger.info("init called");
}
Если снова открыть мою страницу входа и перейти снова на страницу createAccount, init больше не вызывается, и я не понимаю, почему ... Имея объем запроса, он должен быть повторно инициализирован в этой ситуации, верно?
Можете ли вы объяснить мне, почему это не удается?
Спасибо.