我正在尝试在JSF 2.0中发送电子邮件确认链接。 正确的链接发送到用户的电子邮件没有任何问题,但是当用户单击链接时,我正努力将链接重定向到正确的页面。 我正在尝试使用漂亮的面孔进行URL映射。

确认链接如下所示:

/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}

我已经尝试过

<url-mapping id="confirm">
    <pattern value="/confirm" />
    <query-param name="param">#{emailConfirmation.param}</query-param>
    <action>#{emailConfirmation.confirmationLink}</action>
</url-mapping>

我还有一个RequestScoped bean,看起来像:

    @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;
       }

}

用户现在单击链接时,param值为null。 这是怎么引起的,我该如何解决?

#1楼 票数:1

找到了答案。 如果有人好奇,那是因为我进口了

javax.faces.bean

代替

javax.enterprise.context.RequestScoped ....

另外,它是起作用的第二个URL映射代码块,而不是第一个!

#2楼 票数:0

您不能在映射的<pattern>部分中使用查询参数。 如果要为映射配置查询参数,请使用以下命令:

<url-mapping id="confirm">
  <pattern value="/confirm" />
  <query-param name="param">#{emailConfirmation.param}</query-param>
  <action>#{emailConfirmation.confirmationLink}</action>
</url-mapping>

看到:

http://www.ocpsoft.org/docs/prettyfaces/3.3.3/en-US/html/Configuration.html#config.queryparams

  ask by user1795370 translate from so

未解决问题?本站智能推荐:

1回复

与ManagedBean的prettyfaces

我尝试给托管bean一个带有prettyfaces的属性: 在我的观点中, #{registerManagedBean.actionStr}给了我很好的值(1),但在managedBean中,actionStr等于空值(构造函数中的println)。 我怎样才能解决这个问题?
1回复

在PrettyFaces中重定向参数

我有这样的映射: @URLMapping(id = "edituser", pattern = "/edituser/#{ id: userBean.userId}", viewId = "/faces/pages/users/editUser.xhtml") 我想从动作方法重定向到它,
2回复

如何在支持bean中处理prettyfaces的query-param?

我有一个用户列表(dataTable, userId上的链接指向/user/view/{userId} )。 单击此userId链接后,浏览器将按预期重定向到“视图”页面。 我有一个页面接受第一个用户的URL模式http://localhost:8080/user/view/1和第二个接受
3回复

如何使用primefaces和prettyfaces?

当Primefaces和漂亮的脸一起使用时,Primefaces不起作用。 我添加流动的jar: 我的web.xml代码: 我的pretty-config.xml代码: 这个图像是whithou prittyface(jar和configure): 当我添加漂亮的脸罐。然后流动
1回复

使用PrettyFaces3.3.1-SNAPSHOT

我下载了3.3.1-SNAPSHOT版本来制作有关此帖子的通用网址: 漂亮面孔:通用网址映射 我的配置如下: 我的web.xml: 我的pretty-config.xml: 以下行在终端中不断重复: at com.ocpsoft.pretty.faces.config.an
3回复

PrimefacesFileUpload不能与PrettyFaces和SpringBoot一起使用

我使用Spring Boot 1.5.2.RELEASE和JSF 2.2.14以及Primefaces 6.1和PrettyFaces 3.4.1.Final。 我的pom文件如下: 我的springboot配置类如下: 上传的xhtml页面: fileupload支持bean如
1回复

prettyfaces和jsf:使用过滤器在操作类中获取空值

你好,我使用的是prettyfaces jsf2.0,我创建了一个过滤器,该过滤器正在检查每个请求,无论用户是否登录 当我启动tomcat服务器时,它会加载login.xhtml页面URL显示在地址栏中//localhost:8080/MyApp/login.xhtml中的登录用户名和密码字
1回复

在p:menuitem上以编程方式使用PrettyFaces动作

我有一个与PrettyFaces 3.3.3挂钩的PrimeFaces 6.0菜单项,如下所示: 这很好用。 但是我如何在Java中构建菜单并实现相同的目标呢? 这一页 按预期获取菜单结构,但我不知道如何为每个菜单项设置操作。 DefaultMenuItem上没有setActi