Mojarra上的复合材料组件中的EL

时间:2013-01-15 12:41:09

标签: jsf composite-component mojarra

帮我解决问题。

我使用Mojarra 2.1.16和Tomcat 7。

我有复合组件:

<composite:interface>
    <composite:attribute name="value" default="#{modelsBean.allModels}"
                         type="java.util.List" />
</composite:interface>

<composite:implementation>
    <ui:repeat value="#{cc.attrs.value}" var="model" >
        #{model.name}
    </ui:repeat>
</composite:implementation>

如果我使用它,那么我有下一个错误:

javax.el.PropertyNotFoundException: /resources/panels/modelsView.xhtml
#{model.name}: Property 'name' not found on type java.lang.String

如果我改变

<ui:repeat value="#{cc.attrs.value}" var="model">

<ui:repeat value="#{modelsBean.allModels}" var="model">

然后一切正常。

如何解决?

1 个答案:

答案 0 :(得分:0)

您无法将值表达式指定为default值。有关更详细的说明,请参见此处:JSF composite component backing bean EL expression as default of required attribute failing, methods not known