On Mar 10, 2007, at 2:15 AM, Aristedes Maniatis wrote:


On 10/03/2007, at 10:13 AM, Tore Halset wrote:

Hello.

I am a lifecycle callbacks newbie trying to understand http:// cwiki.apache.org/CAYDOC/lifecycle-callbacks.html in a ROP context.

Can the callback methods be defined in the client PersistentObject or only in the server CayenneDataObject?

I believe that they will only operate on the server side. At least that's how we've been able to use them.

True. Let's put it this way - no decision has been made on the client callbacks yet.


Can a ROP client perform non-lifecycle callbacks on the server? If not, are there any other standard way for a ROP client to call a method on the server not related to the persistence lifecycle?

We use Jetty as the transport for Hessian between client/server ROP. So we can define special servlet calls as we need in order to perform code on the server or return values. For instance, when a client logs into the server we wanted the server to maintain a list of client sessions. So, because we aren't committing an object through Cayenne to the server we couldn't use a lifecycle event and we wrote a special servlet call which is used instead.

IIRC, Tore mentioned this before, that it would be nice to define some arbitrary RPC-like calls to the server-side peer objects, kind of like EOF does. So that you can do clientObject.doX() and it will proxy the call to the serverObject.doX(). I'd say this can be a new feature in 3.0, and it would be nice if somebody volunteers to do it.

Andrus

Reply via email to