Olá Pessoal,
Sei que existe um forum do proprio Hibernate, mas tenho certeza que o pessoal que acessa o GUJ tem muito mais conhecimento que o pessoal do forum do hibernate.
O meu problema é um velho conhecido, mas acho que peguei uma combinação mais perigosa.
Estou tentando mapear um campo do tipo DATE no Oracle 8i. O Oracle 8i, para quem não conhece, ainda não possuia o tipo TIMESTAMP.
Bom, quero mapear este campo para um objeto da classe java.util.Date ou java.sql.Date
O problema propriamente dito é o seguinte. Se faço o mapping com o tipo date (type=“date”). O meu objeto Date só é preenchido com a data, o hibernate ignora a parte da hora.
Se utilizo (type=“time”) o hibernate pega somente a hora e ignora a data. Se utilizar o tipo timestamp obtenho uma Excecao (timestamp expected form column tal…; claro, pois ela não é do tipo timestamp).
Parece que este problema existe na versão 9i, mas a solução apresentada era ignorar o tipo no mapeamento. Ou seja, não mencionar o tipo e deixar o hibernate escolher pra você. Mas no 8i não funciona. Ignorar o tipo faz o hibernate escolher como tipo o timestamp, gerando a excecao timestamp expected for column …
Acho que devo fazer um tipo definido pelo usuário, mas acho um absurdo não haver nenhum tipo no hibernate capaz de resolver esse problema.
Se algum colega já passou esse aperto e conseguiu resolvê-lo de forma fácil e elegante, por favor, peço que compartilhe esta informação com outro colega de Java.
Agradeço a atençao dos colegas