On Jan 26, 2008, at 11:01 AM, <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>
wrote:
What i understood from chapter 'Running Client Without CWS' at the "http://cayenne.apache.org/doc/remote-object-persistence-coding-client.html
" page is that i can use data from the same library of my ObjEntity
classes (actually generated client classes) through not only remote
source channel (HessianConnection) but also through local source
channel (LocalConnection). I think the only reason i would need
standart Cayenne classes is if i need my application work faster.
I see, we should probably remove the first example there (the one
without a LocalConnection), as we are currently not testing such setup
and can't guarantee that it works.
This mixing would be the most reasonable if i have a Web application
and desktop swing application working with same set of entities
(with one database). Then i wouldn't need to generate TWO packages
of classes representing one set of db entities. Also they together
might work faster, because they would use the same cache.
Well, this dream could come true only if both 'applications' use the
same Configuration. So i also thought that
Configuration.getSharedConfiguration() returns something other than
the conf CWS is using. Now that you say that CWS creates its own
configuration and stores it in the application-scoped object, i
ask: how then i can fetch this Configuration??
You can subclass HessianService and expose its DataDomain protected
variable to the application in a way that is appropriate for your
app.. E.g. via a static method. Your custom subclass name can be
passed to HessianServlet via "service-class" init parameter in
"web.xml".
What is really strange, is why everything works with
HESSIAN_SERIALIZATION and does not with JAVA_ and NO_.
Hmm... Yesterday I didn't realize that it worked for you with
HESSIAN_SERIALIZATION *locally*... Now it is starting to make sense...
I think this is due to the transient variables in some objects
involved. During serialization they are being reset to NULL, while
NO_SERIALIZATION leaves them in the "client state". I am still unsure
about HESSIAN vs. JAVA though...
Anyways, let me open a bug in Jira, and please use
HESSIAN_SERIALIZATION for now.
Thanks,
Andrus