I've got a problem with this, and it kind of casts doubt on the whole "database classes are the same ones exposed to the client" concept. I tried changing the 'value' field of KeyValuePair to a Blob, but of course, I am now getting a gwtc compile error -- there is no Blob class in JavaScript!
Really, the client version of the KeyValuePair should have an Object (already deserialised), while the database/server version should have a Blob (serialised for the database storage). With the current architecture, there is no way for me to ever use any type in the database which is not a standard Java type (such as Blob, Text, User, etc). This makes me nervous about the whole concept. Perhaps we should just be providing a much simpler API (similar to the dev-api) which simply lets you query individual properties of each object, rather than taking a copy of the whole thing.
In any event, I don't know how to solve this present problem. Any thoughts?
I've got a problem with this, and it kind of casts doubt on the whole "database classes are the same ones exposed to the client" concept. I tried changing the 'value' field of KeyValuePair to a Blob, but of course, I am now getting a gwtc compile error -- there is no Blob class in JavaScript!
Really, the client version of the KeyValuePair should have an Object (already deserialised), while the database/server version should have a Blob (serialised for the database storage). With the current architecture, there is no way for me to ever use any type in the database which is not a standard Java type (such as Blob, Text, User, etc). This makes me nervous about the whole concept. Perhaps we should just be providing a much simpler API (similar to the dev-api) which simply lets you query individual properties of each object, rather than taking a copy of the whole thing.
In any event, I don't know how to solve this present problem. Any thoughts?