Problemas com Data (usando VRaptor)

Prezados,

Tenho um atributo do tipo Date (ja tentei java.sql.Date e java.util.Date) na minha Classe Cliente.

Quando tento persistir usando o formato dd/mm/aaaa, obtenho o seguinte erro:
???is_not_a_valid_date???

Quando tento persistir usando o formato aaaa-mm-dd ou aaa-dd-mm ela salva, mas o valor salvo é completamente diferente do digitado (0022-05-16 00:00:00.0
e 0017-10-14 00:00:00.0 para os respectivos formatos usando a data de 16/11/2009)

Qual a melhor maneira de corrigir isso? É necessário criar uma tag lib pra resolver?

crie um DateConverter pro padrão que vc está usando:


@Converts(Date.class)
public class DateConverter implements Converter<Date> {

    public Date convert(String value, .....) {
        return new SimpleDateFormat("dd/mm/aaaa").parse(value);
    }
}

ou algo do tipo… vc vai ter q tratar os casos de ser nulo ou vazio tb…

Oi Lucas,

Fiz da forma que você falou, mas não houve diferença.
A classe ficou assim:

[code]@Convert(Date.class)
@ApplicationScoped
public class DateConverter implements Converter {

public Date convert(String value, Class<? extends Date> type, ResourceBundle bundle) {
	if (value == null || value.equals("")) {
		return null;
	}
	try {
		return (Date) new SimpleDateFormat("dd/mm/aaaa").parse(value);
	} catch (ParseException e) {
		e.printStackTrace();
		throw new ConversionError(MessageFormat.format(bundle.getString("is_not_a_valid_date"), value));
	}
}

}[/code]

Precisa de alguma referencia no jsp?

Vc fez o import certo? tem que ser o mesmo Date que está na sua classe…

debuga e ve se tá passando por essa classe…