Boa tarde,
Estou resolvendo um problema aqui na empresa em que o sistema retornou um XML de resposta com campos de data com o seguinte formado: 2006-0005-02
Porém, deveria ser retornado assim: 2006-05-02
Na classe Java que carrega todos os dados interessados no resultSet, para jogar no arquivo XML o campo da data eu fiz um método formatDate (para a String data, retornada da query):
// Date Formatter
private static final SimpleDateFormat dateFormatter;
static {
dateFormatter = new SimpleDateFormat("yyyy-MM-dd");
dateFormatter.setLenient(false);
}
public static String formatDate(String date)
{
if (date == null)
{
return "";
}
try
{
return dateFormatter.format(Timestamp.valueOf(date));
}
catch (Exception ex)
{
logger.info("Unable to format date : " + date);
return "";
}
}
O sistema fica correndo processos diários no servidor para integração de diversos dados.
Alguém sabe se uma sobrecarga do sistema pode fazer com que o SimpleDateFormat fique louco ?
Ao invés de seguir o “yyyy-MM-dd” ele retorne 2006-0005-02 ???
E estou presionado, pois preciso dar uma resposta para o cliente pra ontem, mas todos os testes que eu faço estão retornando corretamente a data pelo método formatDate().
Complementando:
O formato retornado pelo Oracle é 15-05-2006 (dd-mm-yyyy).
Agradeço se puderem ajudar. :?