> Now your idea of UI clients communicating with Cayenne "server" (ala
> EOF JavaClient) will require some work in a different area, namely
> creating some sort of distributed DataContext. I've toyed with this
> idea in the past, and it should be possible to do with a some extra
> effort.
>
> I like this approach theoretically. It should be much more lightweight
> then any kind of EJB, and ...well...distributed. Now I would still want
> to see a deeper study of cases when this might be beneficial for the
> application compared to having the whole stack on the client. Anything
> else other than applets? I know that many people in WO/EOF world use
> such 3-tier/rich client approach, so if anyone could comment/elaborate
> on the benefits, I'd love to hear this myself. What are the most
> appropriate uses for this?
>
> Andrus
>
>
I believe Java Web Start application development would greatly benefit from
such a three-tier approach. I have some experience of creating Web Start
apps. First of all it is very popular in the Java world and there are
thousands and thousands of them deployed (the technology is already mature
and worn smooth) and as opposite to applets you can deploy any (!) kinds of
applications as Web Start apps and make them available online (best if
signed). When I had created such an app based on Cayenne it became evident
there would be two serious problems with it. First it is poorly scaled and
lacks efficiency as every client would open its own JDBC connection to the
host database server over the Internet (which is quite bad practice by
itself) and data- or connection- sharing would be difficult, and, second,
that would mean every client's box receives enough information locally to
open the JDBC connection, so somebody could use it to connect to the
database with an application different than my Web Start application which
is altogether bad and unacceptable.
So, roughly speaking, one VERY important scenario might be:
1. Cayenne standalone app is developed as a regular two tier application
2. Without changes in the code (or with minor ones) it is reconfigured to
work over the mid-tier.
3. It is deployed as a Web Start Application on the company's website to
provide services of the rich client quality to customers, so on...
By the way, the possibility to use the concept of Data Views in the manner
hinted by Tore's question is very interesting and, definitely, something to
think about.
Andriy.
This archive was generated by hypermail 2.0.0 : Sun Oct 19 2003 - 16:45:18 EDT