Erro com o formato timestamp without time zone

10 respostas
Yago_Ernandes

Usando o Hibernate, ao tentar gravar no banco de dados vários valores, ele retorna esse erro quando vai tentar os do tipo timestamp…

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

No java eu estou usando o tipo ‘Timestamp’ para os campos ‘timestamp without time zone’ do postgre

Como eu resolvo isso??

10 Respostas

Rodrigo_Sasaki

Já tentou usar Calendar? ou até mesmo Date.@Temporal(TemporalType.TIMESTAMP) @Column(name = "DATA") private Date data

Yago_Ernandes

Tentei fazer do jeito que você falou ai deu esse erro:

<blockquote>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 <a href="http://hibernate.sourceforge.net/">http://hibernate.sourceforge.net/</a>. Use namespace <a href="http://www.hibernate.org/dtd/">http://www.hibernate.org/dtd/</a> 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)

</blockquote>
Rodrigo_Sasaki

Você anotou uma variável de que tipo ?

Hebert_Coelho

Você anotou uma variável de que tipo ?Seu campo está anotado com java.util.Date igual o Rodrigo falou?

Yago_Ernandes

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?

Rodrigo_Sasaki

Mostre aí o erro e o atributo mapeado.

Yago_Ernandes

O erro do bigint eu resolvi…

Agora o erro que ta dando é este:

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

E eu não sei a qual atributo ele se refere…

Hebert_Coelho

Yago Ernandes:
O erro do bigint eu resolvi…

Agora o erro que ta dando é este:

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

E eu não sei a qual atributo ele se refere…

Chegou a hora chata de você comentar um campo e testar, comentar outro campo e testar…

Yago_Ernandes

=O Chata mesmo pois minha tabela tem 66 colunas… rsrs

Yago_Ernandes

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?

Criado 23 de outubro de 2012
Ultima resposta 24 de out. de 2012
Respostas 10
Participantes 3