Then +1 from me. One shortcoming of my approach is that the Modeler
auto-generates any missing DataNode, so if I want to manipulate my
DataMap, I have to remember to delete the generated DataNode or risk a
lot of confusion.
--
Kevin
On May 20, 2008, at 1:44 PM, Andrus Adamchik wrote:
On May 20, 2008, at 8:33 PM, Kevin Menard wrote:
I have all of my Persistent objects in one module that bundles up
the DataMap. Each app that uses them provides its own DataNode.
It makes deployment to different environments really nice. It also
lets me swap out test and production DataNodes really simply.
I'm not married to that one way of doing things, but I would like
to see that use case addressed somehow.
Addressing it in a Modeler-friendly fashion is the whole point here.
The idea is to get rid of workarounds like yours (or cdeploy Ant
task). Here is a Wiki link to the raw design description of this
feature:
http://cwiki.apache.org/CAY/runtime-metadata-merging.html
So you'll simply have multiple full Cayenne projects (one per module
that define DataMaps, and one in the application that defines
DataNodes and links DataMaps to them). Each project can be opened
and manipulated in the modeler independently from each other. So it
makes possible environment-agnostic "Cayenne libraries" (or
"persistence units" in JPA speak) that can be combined with other
such libraries and shared between the projects.
Andrus