【问题标题】:Passing an object stored in a session managed bean in a JSF creation form以 JSF 创建表单传递存储在会话托管 bean 中的对象
【发布时间】:2012-05-21 19:57:50
【问题描述】:

我正在使用支持身份验证和管理一些简单对象的 Java EE 应用程序 用户登录后,我将其作为对象存储在会话范围的托管 bean 中。登录的用户可以创建一个新的 UNIT 对象,该对象必须只对他可见。我正在使用 JSF 表单执行此操作。我的问题是我无法将当前用户作为创建单元的所有者传递。

我试图用 JSF 创建单元表单中的 inputHidden 标记做这样的事情

<h:inputHidden binding="#{unitController.selected.user}" value="#{loginController.checkedUser}"/>

但它不起作用。

我还尝试在 CreateUnit 方法中添加一个 User 对象作为参数,但我不确定如何使用 Java 表达式语言调用此方法。 基本上,

<p:commandButton value="Save Unit" action="#{unitController.create(#{loginController.checkedUser})}" update="createUnitForm :growlCreateUnit"/>

但仍然无法正常工作。

有人可以帮忙吗?

【问题讨论】:

    标签: jsf el


    【解决方案1】:

    替换

    <p:commandButton value="Save Unit" 
               action="#{unitController.create(#{loginController.checkedUser})}" 
               update="createUnitForm :growlCreateUnit"/>
    

    与:

    <p:commandButton value="Save Unit"
               action="#{unitController.create(loginController.checkedUser)}"
               update="createUnitForm :growlCreateUnit"/>
    

    EL 表达式不能嵌套。

    【讨论】:

      猜你喜欢
      • 2017-03-02
      • 1970-01-01
      • 2015-08-22
      • 2011-12-05
      • 2012-12-20
      • 2014-08-29
      • 1970-01-01
      • 2012-10-03
      • 1970-01-01
      相关资源
      最近更新 更多