代码之家  ›  专栏  ›  技术社区  ›  malejpavouk

JSF强制呈现值表达式

  •  1
  • malejpavouk  · 技术社区  · 15 年前

    我对JSF(1.2)+primefaces(1.1)有问题。我已经在JSF上编写了经典的站点,而且我对每一篇文章都有请求范围的backing bean。问题是,当我试图评估文章时,支持bean不再存在。 所以我想强制JSF在呈现阶段输出这个表达式的结果(这样排名代码就会发送呈现的Id),但是如果我使用dolar符号,一切都会像我使用#(我觉得这可能是我脸上的bug)一样工作。

    另一个解决方案是会话作用域备份bean,但是用户可能已经打开了更多的页面(他对上次打开的页面进行了wold评级),另一个问题是当会话过期时会发生什么。。。。

    谢谢你的帮助

        <p:rating stars="5" value="#{articleClientBean.userRating}" update="ratingCount, avgRating" rateListener="#{articleClientBean.handleRate}">
             <f:param value="#{articleClientBean.articleId}" name="articleId"/>
        </p:rating>
    
    1 回复  |  直到 15 年前
        1
  •  1
  •   BalusC    15 年前

    使用 h:inputHidden 相反。

    <p:rating stars="5" value="#{articleClientBean.userRating}" update="ratingCount, avgRating" rateListener="#{articleClientBean.handleRate}" />
    <h:inputHidden value="#{articleClientBean.articleId}" />