[英]EL in composite component on 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">
然后一切正常。
那怎么解决呢?
您不能将值表达式指定为default
值。 请参阅此处以获取更详细的说明: 作为必需属性的默认值,JSF复合组件支持bean EL表达式失败,方法未知
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.