Bad value for type timestamp on production server

2019-07-07 09:54发布

I'm working with: seam 2.2.2 + hibernate + richfaces + jboss 5.1 + postgreSQL

I have an module which needs to load some data from the database. Easy. The problem is, on development it works fine, 100%, but when I deploy on my production server and try to get the data, an error rise:

could not read column value from result set: fechahor9_504_; Bad value for type timestamp : [C@122e5cf
SQL Error: 0, SQLState: 22007
Bad value for type timestamp : [C@122e5cf
javax.persistence.PersistenceException: org.hibernate.exception.DataException: could not execute query

[more errors]

Caused by: org.postgresql.util.PSQLException: Bad value for type timestamp : [C@122e5cf
at org.postgresql.jdbc2.TimestampUtils.loadCalendar(TimestampUtils.java:232)

[more errors]

Caused by: java.lang.NumberFormatException: Trailing junk on timestamp: ''
at org.postgresql.jdbc2.TimestampUtils.loadCalendar(TimestampUtils.java:226)

I can't understand why it works on my machine (development) and why not on production. Any clues? Anyone gone through the same problem? Is exactly the same compilation

2条回答
手持菜刀,她持情操
2楼-- · 2019-07-07 10:28

Stefano Travelli was right. I was checking the jBoss on production and there was an old jdbc driver on [jboss_dir]/common/lib from an old jwebstart application (not developed by me). Deleted that jdbc and it works fine. I should check if the old application is still needed and if so, check if it still works without the jdbc being there or with an upgraded version.

查看更多
我只想做你的唯一
3楼-- · 2019-07-07 10:44

Not sure what the driver story is .. but the problem for me show up when JDBC tries to parse bigint from the DB to

myOjbect.setDate(Date date){...}

the other "JDBC friendly" is ignorred for some reason .

myOjbect.setDate(long date){...}

So .. removing the Date setter and leaving a long one resolves the problem. This is a Big workaround .. but may help someone out there :)

查看更多
登录 后发表回答