Galera…
To tentando fazer um CC tão simples:
<cc:implementation>
<h:panelGrid columns="2">
<p:outputLabel for="#{cc.attrs.fieldId}" value="#{cc.attrs.fieldLabel}"/>
<p:selectOneMenu id="#{cc.attrs.fieldId}" required="#{cc.attrs.required}" converter="#{cc.attrs.converter}" value="#{cc.attrs.targetValue}">
<f:selectItem itemLabel="#{msg['label.selecione.item']}" itemValue="" />
<f:selectItems value="#{cc.attrs.listValue}"/>
</p:selectOneMenu>
</h:panelGrid>
</cc:implementation>
porém não funciona por causa do converter…
javax.el.ELException: Cannot convert tipoCampoConverter of type class java.lang.String to interface javax.faces.convert.Converter
at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:424)
at org.apache.el.ExpressionFactoryImpl.coerceToType(ExpressionFactoryImpl.java:47)
at com.sun.faces.facelets.tag.TagAttributeImpl.getObject(TagAttributeImpl.java:320)
O converter é do tipo enum e funciona normalmente fora do CC…
@FacesConverter(value = "tipoCampoConverter")
public class TipoCampoConverter extends EnumConverter {
public TipoCampoConverter() {
super(TipoCampo.class);
}
}
Ja tentei com e sem a tag type:
<cc:attribute name="converter" required="true" type="javax.faces.convert.Converter"/>
Alguém já passou por isso?