在JSF创建表单中传递存储在会话管理Bean中的对象

时间:2012-05-21 19:57:50

标签: jsf el

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

我试图用JSF创建单位表格中的inputHidden标签做这样的事情

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

但它不起作用。

我还尝试在CreateUnit方法中添加User对象作为参数,但我不确定如何使用Java Expression Language调用此方法。 基本上,

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

但仍然无效。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分: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表达式不能嵌套。