No capítulo 5 estou recebendo este erro de conversão entre o tipo Date e o tipo Calendar:
> java.util.Date cannot be cast to java.util.Calendar
Meu converter já está criado e view está indicando o tipo:
View
(…)
<div>
<h:outputLabel>Data de lançamento</h:outputLabel>
<h:inputText value=“#{adminBooksBean.product.releaseDate}” pt:type=“date”>
<f:convertDateTime pattern=“yyyy-MM-dd”/>
</h:inputText>
Converter
package org.casadocodigo.loja.converters;
import java.util.Calendar;
import java.util.Date;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.DateTimeConverter;
import javax.faces.convert.FacesConverter;
@FacesConverter(forClass=Calendar.class)
public class CalendarHtml5Converter implements Converter {
private static DateTimeConverter originalConverter = new DateTimeConverter();
static {
originalConverter.setPattern("yyyy-MM-dd");
}
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
Date date = (Date) originalConverter.getAsObject(context, component, value);
if (date == null) {
return null;
}
Calendar newCalendar = Calendar.getInstance();
newCalendar.setTime(date);
return newCalendar;
}
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
if (value == null) {
return null;
}
Calendar calendar = (Calendar) value;
return originalConverter.getAsString(context, component, calendar.getTime());
}
}
Alguém já passou por isto?