Just to clarify - I am not suggesting that it is a solution for a
problem that doesn't exist! :)

Hehe.. I understand :) But it kind of amazes me that not more people use a proper remoting solution for their fat client business applications. What do people do? Do they include jdbc-drivers and orms directly in the client? That increases the size of the client conciderably, and every time you fix a bug or change something in the dao layer, you have to redeploy your app to all clients. If you upgrade your dao dependencies -> redeploy again.

That's just madness :) Same story with WebServices - Java WS libs are huge, hard to work with, and slow compared to just binary object serialization. You can't even properly express all data types in some WebServices solutions.

BRAP is a 16k dependency, and all you need to include in your app is your domain objects and your service interfaces. You have much more fine grained access control options in your service layer than if you included the bemoth of an orm most people use as well :)

You even get "pass by reference" style functionality with BRAP (by enabling an option), so that if you write this on your client:

Person person = new Person();
person.setName("John Doe");
personService.savePerson(person);

.. person will contain the changes made to that object on the server side. Perfect for db inserts, where the id field might be populated by the dao layer.

Hehe.. sorry for the off topic rant :)

-- Edvin



Reply via email to