Re: Bad Value for Data Type Timestamp - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: Bad Value for Data Type Timestamp
Date
Msg-id E6920CFA-9CCD-4FE5-BC60-8B2B07574899@fastcrypt.com
Whole thread Raw
In response to Re: Bad Value for Data Type Timestamp  ("Jonathan Vallar" <jonathan.vallar@gmail.com>)
Responses Re: Bad Value for Data Type Timestamp  (Kris Jurka <books@ejurka.com>)
List pgsql-jdbc
Jonathan,

It means that the data in the timestamp column, or what it thinks is the timestamp column is not formatted correctly as a timestamp.

What you sent as sample data is formatted correctly. So the only thing I can think of is that the mapping of the columns is not correct.

Have you tried a very simple java program which reads the timestamp via the jdbc driver without websphere in the middle ?

Dave

On 28-Feb-06, at 5:55 AM, Jonathan Vallar wrote:

Hi!

The Postgres JDBC driver is being used by IBM Websphere to get data from the postgres database. The websphere product also gets timestamp data from MS Sql Server.

What does the error mean?


Retrieve Operation failed on the BusinessObject Bad value for type timestamp : [C ( at ) 56c55d28  Exception: java.lang.NumberFormatException: Expected time to be colon-separated, got ' Stack Trace:  java.lang.NumberFormatException : Expected time to be colon-separated, got '  at org.postgresql.jdbc2.TimestampUtils.loadCalendar(TimestampUtils.java :151)   at org.postgresql.jdbc2.TimestampUtils.toTimestamp(TimestampUtils.java:307)   at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp (AbstractJdbc2ResultSet.java:419)   at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp (AbstractJdbc2ResultSet.java:2088)   at com.crossworlds.connectors.JDBC.JDBCBOhandler.doContainerRetrieve(JDBCBOhandler.java:3697)   at com.crossworlds.connectors.JDBC.JDBCBOhandler.doRecursiveRetrieve(JDBCBOhandler.java:3316)   at com.crossworlds.connectors.JDBC.JDBCBOhandler.doRetrieve(JDBCBOhandler.java:3265)   at com.crossworlds.connectors.JDBC.JDBCBOhandler.doVerbFor (JDBCBOhandler.java:1346)   at com.crossworlds.cwconnectorapi.CWConnectorBOHandler.doVerbFor (CWConnectorBOHandler.java:127)   at CxCommon.BusinessObject.doVerbFor(BusinessObject.java:2128)   at com.crossworlds.cwconnectorapi.CWConnectorBusObj.doVerbFor (CWConnectorBusObj.java:126)   at com.crossworlds.connectors.JDBC.JDBCConnectorAgent.pollForEvents (JDBCConnectorAgent.java:1137)   at AppSide_Connector.BusObjJavaInterface.poll(BusObjJavaInterface.java:355)   at AppSide_Connector.AppCalls.poll( AppCalls.java:191)   at AppSide_Connector.AgentBusinessObjectManager.poll( AgentBusinessObjectManager.java:719)   at AppSide_Connector.AppPolling.poll(AppPolling.java:294)   at AppSide_Connector.AppPolling.doPollingContinuousWait( AppPolling.java:556)   at AppSide_Connector.AppPolling.run(AppPolling.java :121)   at java.lang.Thread.run(Thread.java:513)  End of Stack Trace   SQLException {2}]


On 2/28/06, Dave Cramer < pg@fastcrypt.com> wrote:
There doesn't appear to be anything wrong with the data, and the
driver can handle that data fine.

Is this code that wraps the driver mapping columns to types ? Have
you mapped it correctly ?

Dave
On 28-Feb-06, at 3:42 AM, Jonathan Vallar wrote:

> Hi!
>
> Good day!
>
> I encountered an error in getting data from a timestamp field
> datatype.  I am using a  the JDBC type Driver for Postgres ,
> version 8.1-405  (8.1-405 JDBC 2). The database run on a Centronix
> Linux OS and the postgres database version is 8.1.3.
>
> Basically the java application gets data from the "xworlds_events"
> table. The application returns an error in retrieving data from the
> event_time field.
>
> Below is the stacktrace of the java program:
>
> Retrieve Operation failed on the BusinessObject Bad value for type
> timestamp : [C@56c55d28  Exception:
> java.lang.NumberFormatException: Expected time to be colon-
> separated, got ' Stack Trace:  java.lang.NumberFormatException :
> Expected time to be colon-separated, got '  at
> org.postgresql.jdbc2.TimestampUtils.loadCalendar
> (TimestampUtils.java:151)   at
> org.postgresql.jdbc2.TimestampUtils.toTimestamp(TimestampUtils.java:
> 307)   at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp
> (AbstractJdbc2ResultSet.java :419)   at
> org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp
> (AbstractJdbc2ResultSet.java:2088)   at
> com.crossworlds.connectors.JDBC.JDBCBOhandler.doContainerRetrieve
> (JDBCBOhandler.java :3697)   at
> com.crossworlds.connectors.JDBC.JDBCBOhandler.doRecursiveRetrieve
> (JDBCBOhandler.java:3316)   at
> com.crossworlds.connectors.JDBC.JDBCBOhandler.doRetrieve
> (JDBCBOhandler.java:3265)   at
> com.crossworlds.connectors.JDBC.JDBCBOhandler.doVerbFor
> (JDBCBOhandler.java:1346)   at
> com.crossworlds.cwconnectorapi.CWConnectorBOHandler.doVerbFor
> (CWConnectorBOHandler.java:127)   at
> CxCommon.BusinessObject.doVerbFor(BusinessObject.java:2128)   at
> com.crossworlds.cwconnectorapi.CWConnectorBusObj.doVerbFor
> (CWConnectorBusObj.java:126)   at
> com.crossworlds.connectors.JDBC.JDBCConnectorAgent.pollForEvents
> (JDBCConnectorAgent.java:1137)   at
> AppSide_Connector.BusObjJavaInterface.poll(BusObjJavaInterface.java:
> 355)   at AppSide_Connector.AppCalls.poll( AppCalls.java:191)   at
> AppSide_Connector.AgentBusinessObjectManager.poll
> (AgentBusinessObjectManager.java:719)   at
> AppSide_Connector.AppPolling.poll(AppPolling.java:294)   at
> AppSide_Connector.AppPolling.doPollingContinuousWait
> ( AppPolling.java:556)   at AppSide_Connector.AppPolling.run
> (AppPolling.java:121)   at java.lang.Thread.run(Thread.java:513)
> End of Stack Trace   SQLException {2}]
>
>
>
> Below is the schema of the table:
>
> wbi_db=> \d xworlds_events;
>               Table "public.xworlds_events"
>      Column     |            Type             | Modifiers
> ----------------+-----------------------------+-----------
>  event_id       | bigint                      | not null
>  connector_id   | character varying(40)       |
>  object_key     | character varying(80)       | not null
>  object_name    | character varying(40)       | not null
>  object_verb    | character varying(40)       | not null
>  event_priority | real                        | not null
>  event_time     | timestamp without time zone |
>  event_status   | integer                     |
>  event_comment  | character varying           |
>
>
>
> Here is a sample data from the table:
>
> wbi_db=> select * from xworlds_events;
>  event_id | connector_id | object_key |     object_name      |
> object_verb | event_priority |        event_time         |
> event_status | event_comment
> ----------+--------------+------------+----------------------
> +-------------+----------------+---------------------------
> +--------------+---------------
>         1 | PostgreSQL   | 8100000000 | POS_to_SAP_1_WRAPPER |
> Create      |              1 | 2006-02-27 19:51: 22.58118
> |           -1 | Test
> (1 row)
>
> wbi_db=>
>
>
> How can I go about the problem? Is this a bug?
>
> Thanks!
>
> Regards,
>
> Jonathan
>
>



pgsql-jdbc by date:

Previous
From: "Jonathan Vallar"
Date:
Subject: Re: Bad Value for Data Type Timestamp
Next
From: Kris Jurka
Date:
Subject: Re: Bad Value for Data Type Timestamp