Usando o Hibernate, ao tentar gravar no banco de dados vários valores, ele retorna esse erro quando vai tentar os do tipo timestamp…
[quote]org.hibernate.exception.SQLGrammarException: ERRO: coluna “altparc” é do tipo timestamp without time zone mas expressão é do tipo bytea
Dica: Você precisará reescrever ou converter a expressão.
Posição: 616[/quote]
No java eu estou usando o tipo ‘Timestamp’ para os campos ‘timestamp without time zone’ do postgre
Como eu resolvo isso??
Já tentou usar Calendar? ou até mesmo Date.@Temporal(TemporalType.TIMESTAMP)
@Column(name = "DATA")
private Date data
Tentei fazer do jeito que você falou ai deu esse erro:
[quote]run:
Out 23, 2012 11:46:27 AM org.hibernate.annotations.common.Version
INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final}
Out 23, 2012 11:46:27 AM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.1.6.Final}
Out 23, 2012 11:46:27 AM org.hibernate.cfg.Environment
INFO: HHH000206: hibernate.properties not found
Out 23, 2012 11:46:27 AM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Out 23, 2012 11:46:27 AM org.hibernate.cfg.Configuration configure
INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml
Out 23, 2012 11:46:27 AM org.hibernate.cfg.Configuration getConfigurationInputStream
INFO: HHH000040: Configuration resource: /hibernate.cfg.xml
Out 23, 2012 11:46:27 AM org.hibernate.internal.util.xml.DTDEntityResolver resolveEntity
WARN: HHH000223: Recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide!
Out 23, 2012 11:46:27 AM org.hibernate.cfg.Configuration doConfigure
INFO: HHH000041: Configured SessionFactory: null
Initial SessionFactory creation failed.
org.hibernate.AnnotationException: @Temporal should only be set on a java.util.Date or java.util.Calendar property: model.tab_parc.admparc
Exception in thread “main” java.lang.ExceptionInInitializerError
at view.HibernateUtil.(HibernateUtil.java:31)
at control.HibernateTest.main(HibernateTest.java:17)
Caused by: org.hibernate.AnnotationException: @Temporal should only be set on a java.util.Date or java.util.Calendar property: model.tab_parc.admparc
at org.hibernate.cfg.annotations.SimpleValueBinder.setType(SimpleValueBinder.java:165)
at org.hibernate.cfg.annotations.PropertyBinder.makePropertyAndValue(PropertyBinder.java:188)
at org.hibernate.cfg.annotations.PropertyBinder.makePropertyValueAndBind(PropertyBinder.java:204)
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:2010)
at org.hibernate.cfg.AnnotationBinder.processIdPropertiesIfNotAlready(AnnotationBinder.java:765)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:684)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQueue(Configuration.java:3437)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3391)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1341)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1733)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1784)
at view.HibernateUtil.(HibernateUtil.java:27)
… 1 more
Java Result: 1
CONSTRUÍDO COM SUCESSO (tempo total: 1 segundo)
[/quote]
Você anotou uma variável de que tipo ?
Você anotou uma variável de que tipo ?[/quote]Seu campo está anotado com java.util.Date igual o Rodrigo falou?
Desculpem-me, eu tinha colocado o java.sql.Date, agora ja funcionou…
Mas ta dando outro problema, com o bigint da db, na minha aplicação ta mapeada com int e ta dando um erro do mesmo tipo, como é esse?
Mostre aí o erro e o atributo mapeado.
O erro do bigint eu resolvi…
Agora o erro que ta dando é este:
[quote]ERROR: ERRO: sequência de bytes é inválida para codificação “UTF8”: 0x00
Exception in thread “AWT-EventQueue-0” org.hibernate.exception.DataException: ERRO: sequência de bytes é inválida para codificação “UTF8”: 0x00[/quote]
E eu não sei a qual atributo ele se refere…
[quote=Yago Ernandes]O erro do bigint eu resolvi…
Agora o erro que ta dando é este:
[quote]ERROR: ERRO: sequência de bytes é inválida para codificação “UTF8”: 0x00
Exception in thread “AWT-EventQueue-0” org.hibernate.exception.DataException: ERRO: sequência de bytes é inválida para codificação “UTF8”: 0x00[/quote]
E eu não sei a qual atributo ele se refere…[/quote]Chegou a hora chata de você comentar um campo e testar, comentar outro campo e testar…
=O Chata mesmo pois minha tabela tem 66 colunas… rsrs
Consegui! Eu comentei todos os campos que não estava usando no formulário, e tirei a sequencia que eu tinha colocado que por algum motivo não estava funcionando…
Agora ta gravando beleza, só não grava as datas que são pegas do formulário, preciso converte-las?