Eu tenho o seguinte problema no meu Bean eu tenho um GregorianCalendar e na jsp eu uso o richfaces com a tag calendar, antes funcionava com java.util.Date, agora fala que não dar cast de GregorianCalendar para Date
Existe um solução para isso? Ou tenho que ter um objeto Date temporário só pra setar o GregorianCalendar depois?Fora que os métodos de Date estão depreciados.
Aqui estão os arquivos (resumidos)
Bean.java
import java.util.GregorianCalendar;
public class Bean {
private GregorianCalendar data;
public Bean() {
data = new GregorianCalendar();
}
public GregorianCalendar getData() {
return data;
}
public void setData(GregorianCalendar data) {
this.data = data;
}
public String getDataText(){
return data.get(GregorianCalendar.DATE)+"/"+(data.get(GregorianCalendar.MONTH)+1)+"/"+data.get(GregorianCalendar.YEAR);
}
}
page.jsp
<f:view>
<h:form>
<rich:panel header="Calendar">
<rich:calendar datePattern="dd/MM/yyyy" value="#{bean.data}">
</rich:calendar>
<br>
<h:outputText id="data" value="#{bean.dataText}">
</h:outputText>
</rich:panel>
</h:form>
</f:view>
O erro
java.lang.ClassCastException: java.util.GregorianCalendar cannot be cast to java.util.Date
org.richfaces.renderkit.CalendarRendererBase.getSelectedDate(CalendarRendererBase.java:372)
org.richfaces.renderkit.html.CalendarRenderer.doEncodeEnd(CalendarRenderer.java:225)
org.richfaces.renderkit.html.CalendarRenderer.doEncodeEnd(CalendarRenderer.java:436)
org.ajax4jsf.renderkit.RendererBase.encodeEnd(RendererBase.java:135)
....