Opa, beleza? Estou com o seguinte erro, não to conseguindo usar corretamente o localDate, porém quando eu coloco ele em um inputText, funciona corretamente, porem quando uso ele no componente p:calendar me da erro.
<p:outputLabel value="Data Nascimento: " for="dataNascimento" />
<p:calendar id="dataNascimento" pattern="dd/MM/yyyy"
value="#{clienteBean.cliente.dataNascimento}"
requiredMessage="O campo dataNascimento é obrigatório"
converter="dataConverter">
<p:ajax listener="#{clienteBean.verificarData}"
update=":mensagem formularioInserir:dataNascimento"
event="blur" />
</p:calendar>
@FacesConverter(value = "dataConverter")
@SuppressWarnings("serial")
public class DataConverter implements Converter, Serializable {
@Override
public Object getAsObject(FacesContext context, UIComponent component,
String valor) {
return LocalDate.parse(valor);
}
@Override
public String getAsString(FacesContext context, UIComponent component,
Object objeto) {
LocalDate localDate = (LocalDate) objeto;
return localDate.format(DateTimeFormatter.ofPattern("dd/MM/yyyy"));
}
}
Quando coloco a data no campo, calendar, e como o campo está com o required true, ele me retorna a mensagem logo que eu escolho a data, parace que quando eu coloco a data nada acontece, parace que fica nula, até porque escolho a data mais ela não é preenchida ai ocorre a mensagem.