【发布时间】:2013-11-15 13:38:30
【问题描述】:
嗯,我有一个自定义面孔转换器,如下所示:
@FacesConverter(value = "entityConverter", forClass = AbstractBean.class)
public class EntityConverter implements Converter {
在我的 XHTML 的某些部分,我是这样使用的:
<p:selectOneMenu converter="entityConverter"
rendered="#{clienteMB.bean.pessoaFisica != null}"
value="#{clienteMB.bean.pessoaFisica.estadoCivil.descricao}"
effect="fade">
<f:selectItem itemLabel="Selecione um Sexo" itemValue="" />
<f:selectItems value="#{clienteMB.estadosCivis}" var="estadoCivil"
itemLabel="#{estadoCivil.descricao}" itemValue="#{estadoCivil}" />
</p:selectOneMenu>
但是当我尝试进入这个页面时,我得到了以下错误:
javax.faces.FacesException: Expression Error: Object named: entityConverter not found.
at com.sun.faces.application.ApplicationImpl.createConverter(ApplicationImpl.java:1338)
at com.sun.faces.facelets.tag.jsf.ValueHolderRule$LiteralConverterMetadata.applyMetadata(ValueHolderRule.java:85)
at com.sun.faces.facelets.tag.MetadataImpl.applyMetadata(MetadataImpl.java:81)
at javax.faces.view.facelets.MetaTagHandler.setAttributes(MetaTagHandler.java:129)
at javax.faces.view.facelets.DelegatingMetaTagHandler.setAttributes(DelegatingMetaTagHandler.java:102)
at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.doNewComponentActions(ComponentTagHandlerDelegateImpl.java:409)
at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:159)
at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
...
我不知道为什么会这样。
【问题讨论】: