Membro desde: 21/11/2007 20:14:35
Mensagens: 78
Offline
Iae galera..
Trabalho com Wicket, Spring e Hibernate.
O problema é que nos campos de data ( java.util.Date ) quando o usuário digita uma data do tipo 10/13/2009 ( inválida por conta do mês ) a data chega na web page ( ou bean ou action ) "consertada", ou seja, ela chega 10/01/2010.
Fizemos o seguinte, mudamos os campos para LocalDate ( Joda Time ) e criamos um LocalDateConverter.
O problema do "consertamento" da data foi resolvido.
Só que nao dá para persistir esse campo.
Um exemplo de stacktrace que obtive na hora de consultar essa tabela:
Algum tem alguma solução ou para a data parar de ser transformada ou para persistir LocalDate ( com preferência para solução para persistir LocalDate)
Obrigado
Aquele que tem os meus mandamentos e os guarda esse é o que me ama; e aquele que me ama será amado de meu Pai, e eu o amarei, e me manifestarei a ele.
João 14:21
Membro desde: 27/05/2006 01:31:51
Mensagens: 1531
Localização: Porto Alegre - RS
Offline
Nunca usei o Joda por isso não sei se tem uma solução la pra isso.
Mas vejo duas maneiras de fazer isso.
Mais Simples: Utilize o Date para persistir e utilize o LocalDate apenas como auxiliar transient. que converte no set e get para a sua Date persistente. (Eu não disse que era bonito).
Mais Chata: O hibernate tem suporte para UserTypes. Voce pode implementar um para o seu tipo customizado.
Luis Eduardo Bohrer
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
Membro desde: 21/11/2007 20:14:35
Mensagens: 78
Offline
Aqui onde trabalho criaram uma session factory para substituir a padrão do Spring que a gente usa aqui.
Disseram que essa session factory customizada resolve o problema e persiste LocalDate. Ainda estou fazendo as mudanças no projeto para testa=la. Se funcionar vou tentar abrir e descobrir o que ela tem de diferente para fazer isso funcionar.
Conseguindo eu posto aqui a resposta.
Abracos
Aquele que tem os meus mandamentos e os guarda esse é o que me ama; e aquele que me ama será amado de meu Pai, e eu o amarei, e me manifestarei a ele.
João 14:21