Я пытаюсь отправить ссылку подтверждения по электронной почте в JSF 2.0. Правильная ссылка отправляет на адрес электронной почты пользователя без каких-либо проблем, но я изо всех сил пытаюсь перенаправить ссылку на правильную страницу, когда пользователь нажимает на нее. Я пытаюсь использовать красивые лица для сопоставления URL.Установить параметр ссылки подтверждения в bean-компоненте с использованием PrettyFaces
Ссылка для подтверждения выглядит примерно так:
/confirm?param=1xfib3e
Моего код в красивом лице:
<url-mapping id="confirm">
<pattern value="/confirm?param=#{ iid : emailConfirmation.param}" />
<action>#{emailConfirmation.confirmationLink}</action>
</url-mapping>
Я также попытался изменить { iid : emailConfirmation.param}
к {emailConfirmation.param}
и { param : emailConfirmation.param}
и I 'Пробовал
<url-mapping id="confirm">
<pattern value="/confirm" />
<query-param name="param">#{emailConfirmation.param}</query-param>
<action>#{emailConfirmation.confirmationLink}</action>
</url-mapping>
У меня также есть фасоль RequestScoped, который выглядит примерно так:
@Named("emailConfirmation")
@RequestScoped
public class EmailConfirmation implements Serializable{
private String param;
....
public String confirmationLink() {
log("param value: " + param);
}
public String getParam() {
return param;
}
public void setParam(String param) {
this.param = param;
}
}
Всякий раз, когда пользователь нажимает на ссылку прямо сейчас, значение парам равно нулю. Как это вызвано и как я могу его решить?
Ах да, это хорошая старая проблема. Это связано с тем, что есть два отдельных контейнера для бобов. Обратите внимание, что javax.faces.bean теперь устарели :) – Lincoln
Такая боль ха-ха. Я буду осторожнее искать это с этого момента. – user1795370