cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Malcolm Edgar" <malcolm.ed...@gmail.com>
Subject Re: Hollow Object issue
Date Thu, 17 Apr 2008 09:48:02 GMT
Some more analysis on this problem the ObjectId singleValue value is a
byte[] of the table primary key value "3456", and the ObjectId is returning
the raw byte array as the single primary key value.

This is making a mess of Cayenne refreshing objects, lazy loading, etc.

The environment I am using is Cayenne 3.0 M3 on JDK 1.5.0_15

regards Malcolm Edgar

On Thu, Apr 17, 2008 at 3:55 PM, Malcolm Edgar <malcolm.edgar@gmail.com>
wrote:

> Hi Guys,
>
> I have a nasty problem with attempting to perform a refetchObject() on a
> hollow object.  This is the DataObject toString(), note the primary key
> column 'schema_config_oid' has a value of 'B@ceaf8c>'
>
> The primary key column of this database is an BIGINT, this table only has
> one record and its PK value is '1'
>
> {<ObjectId:SchemaConfig, schema_config_oid=[B@ceaf8c>; hollow; []}
>
> When I try to refetchObject(), I get a stacktrace of:
>
> Caused by: java.sql.SQLException: Cannot convert class [B to SQL type requested due to
java.lang.ClassCastException - [B
> 	at com.mysql.jdbc.PreparedStatement.setObject(PreparedStatement.java:2744)
>
> 	at com.mysql.jdbc.PreparedStatement.setObject(PreparedStatement.java:2532)
> 	at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.setObject(WrappedPreparedStatement.java:420)
> 	at org.apache.cayenne.access.types.AbstractType.setJdbcObject(AbstractType.java:79)
>
> 	at org.apache.cayenne.access.types.ByteArrayType.setJdbcObject(ByteArrayType.java:191)
> 	at org.apache.cayenne.dba.JdbcAdapter.bindParameter(JdbcAdapter.java:481)
> 	at org.apache.cayenne.access.trans.QueryAssembler.initStatement(QueryAssembler.java:123)
>
> 	at org.apache.cayenne.access.trans.QueryAssembler.createStatement(QueryAssembler.java:99)
> 	at org.apache.cayenne.access.jdbc.SelectAction.performAction(SelectAction.java:71)
> 	at org.apache.cayenne.access.DataNodeQueryAction.runQuery(DataNodeQueryAction.java:58)
>
> 	at org.apache.cayenne.access.DataNode.performQueries(DataNode.java:230)
> 	... 60 more
>
>
> I presume there is an issue with the PK value bing a hash string value.
>
> Any advice here am I doing something wrong?
>
> regards Malcolm Edgar
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message