JSF:为辅助bean中的属性创建别名

时间:2011-01-03 15:30:18

标签: jsf facelets

我指的是非常深层的对象层次结构,在EL中具有相当神秘的名称,如#{myBean.configBaseStack.excludeMethodFromAccounting.method.TimeoutBehaviorEnabled}中所示。

我想通过像:

这样的别名指向同一个属性
<x:alias name="m" value="#{myBean.configBaseStack.excludeMethodFromAccounting.method" />
<h:inputText value="#{m.TimeoutBehaviorEnabled}" />

我想有一种方法可以在支持bean中创建这些别名,但我宁愿把它留给模板。

如何在模板/ facelet级别完成此操作?

3 个答案:

答案 0 :(得分:7)

我认为您可以使用<ui:param>来完成此任务:

<ui:param name="m" value="#{myBean.configBaseStack.excludeMethodFromAccounting.method}"/>

然后你可以在同一页面上使用它:

<h:inputText value="#{m.TimeoutBehaviorEnabled}" />

答案 1 :(得分:1)

您可以使用JSTL等效的set标记(使用varvalue属性)。

答案 2 :(得分:0)

据我所知,jsf不支持别名,使用的是标准组件。