Pessoal estou tento problemas ao comparar duas dadas utilizando o componente richcalendar quando tento comparar as datas apresenta o seguinte erro : An error occurred when processing your submitted information. Alguem tem uma exemplo alguma solução ??
segue codigo:
JSF
<h:outputLabel styleClass=“label” style=“margin-left:46px;” value=“Até:” />
<rich:calendar datePattern=“dd/MM/yyyy” value="#{ManterSimulacao.simulacao.dataFim}" >
</rich:calendar>
Metodo
public boolean verificaData() throws Exception {
SimpleDateFormat format = new SimpleDateFormat(“ddMMyyyy”);
Date dataInicio = (Date) format.parse(simulacao.getDataInicio().toString());
Date dataFim = (Date) format.parse(simulacao.getDataFim().toString());
if (dataInicio.after(dataFim)) {
return true;
} else {
return false;
}
}
qual erro ta dando? esse rich calendar nao te retorna um date?
sim… mais nao sei oquer ocorre porque se eu coloco uma data String ele funciona
public boolean verificaData() throws Exception {
SimpleDateFormat format = new SimpleDateFormat(“ddMMyyyy”);
Date dataInicio = (Date) format.parse(“20090102”));
Date dataFim = (Date) format.parse(“20090101”));
if (dataInicio.after(dataFim)) {
return true;
} else {
return false;
}
}
não sei se estou procedendo corretamente .
cara é o seguinte…se vier um Date da tela vc compara direto data1.after(data2)
agora se vier uma String no formato dd/MM/yyyy faz assim
formatter = new SimpleDateFormat("dd/MM/yyyy");
Date data1 = formatter.parse(suadataString);
Date data2 = formatter.parse(suadataString2);
o seu problema é pq vc usa uma mascara em cima e quer comparar com outro tipo de mascara…só muda seu formatoo ai pra ficar (dd/MM/yyyy) e joga a data que vem da tela…isso se nao ja vier um date…
realmente estava retornando um Date fiz como você disse e funcionou perfeitamente. Obrigado!