Hi Andrus,
I've added comments below ...
Andrus Adamchik wrote (in part):
> We may start this discussion now. I haven't tried Howard's Hivemind
> (though I kind of like the name :-)), but I played a lot with Spring,
> mostly in the context of Swing applications, not the web stuff.
>
> In the simplest case Cayenne Configuration instance can be configured as
> a Spring singleton, and used as a factory for DataContexts. No work
> required on our part.
>
> Going further... Don't know if it is a good idea though.. Transparently
> binding a DataContext to an HttpSession using Spring instead of Cayenne
> web listeners. How would you do this in Spring anyway?
>
> And finally, using Spring transaction management. Lots of people seem to
> care about it a lot. I am not one of them since Cayenne transactions
> approach is addressing all my needs as it is. But in any event, this is
> something that will add value.
I am happy to hear you are open to integration with these other
frameworks. Let me take a step back and say that I think it can
possibly have two benefits:
(a) If someone comes up with a good "lightweight container" architecture
it could be very good for the entire open-source-Java community. There
are all of these packages being written (for logging[Log4j], unit
testing[JUnit], ORM[Cayenne], web application development[Tapestry]) and
a standard framework that allows a developer to easily combine and
configure them might, I think, make the whole "ecosystem" more
productive and evolve even faster than it is already doing. Or maybe
not - Spring and Hivemind are still tagged 'research' in my mind. But
if it does I of course would like Cayenne to be a part of it.
(b) As you say, it is not enough to build a great ORM tool - people have
to be convinced to use it. Developers look for recommendations when
attempting to choose which tool to use. I would say that
recommendations come in varying weights, e.g.,
(i) one developer saying 'I like Hibernate'
(ii) one developer writing a Hibernate tutorial with working example code
(iii) a project like Spring adding code to their project to support
Hibernate
I would say that these 'recommendations' have increasing weight in that
the later examples both require more effort and more expertise.
All of this is my long winded way of saying that support for Cayenne in
other projects such as Spring has potent marketing value. Most of us
have written code using a library which lost popularity and then became
a serious maintenance burden for us. Nobody wants to write code based
on a library that will go extinct.
Anyway, perhaps implementing the existing roadmap for Cayenne is the
most immediate concern. After all, maybe these "lightweight containers"
won't prove to be so valuable after all. And I think I can be a better
Cayenne constituent: I have had one difficulty with Cayenne with respect
to the creation of the '<obj-relationship>' and '<db-relationship>'
entries in my XML files in that I had to build them by hand, I couldn't
get the modeler to add them for me. If I can figure out how to get the
modeler to do this for me than I can post enthusiastic messages to
theserverside.com and other places about Cayenne. So I will try again
with the latest version of the modeler - and ask for help if I still
can't figure out how to do it.
cheers,
James
This archive was generated by hypermail 2.0.0 : Fri Jun 04 2004 - 15:44:35 EDT