帮我解决这个问题。
我使用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">
那么一切正常
如何修复?
不能将值表达式指定为default
值。JSF复合组件支持bean EL表达式作为所需属性的默认值失败,方法未知