Thanks for the reply, Michael. Until the next milestone release of
Cayenne (as mentioned by Tore), I'll use the manual process I
outlined.
As far as a good comparison tool for Windows, I use Beyond Compare,
http://www.scootersoftware.com/. It's not open source but it's free to
try and a license is only $30. It's a great comparison tool.
On Nov 27, 2007 8:19 AM, Michael Gentry <blacknex..mail.com> wrote:
> Hi Michael,
>
> This question seems to pop up ever 3 months or so. There currently is
> not a good way, inside the modeler, to re-reengineer the database
> schema. It is a fairly difficult problem and we just haven't looked
> into it enough yet. People have different techniques of handling
> this. I personally just manually update the model once it is created
> (since it doesn't change that frequently or drastically). Since you
> are doing file compares (step 8), it would be really helpful if you
> have a good graphical comparison tool. If on OS X, FileMerge is
> really nice (and comes with the free Apple developer tools or might
> even be part of the base OS). For Windows/Linux, I'm sure a Google
> search would help you there.
>
> Sorry there isn't a better answer currently,
>
> /dev/mrg
>
>
>
> On Nov 26, 2007 5:06 PM, Michael Lepine <mikelepin..mail.com> wrote:
> > Hello all.
> >
> > I am currently using CayenneModeler version 2.0.3 to reengineer a
> > database schema and generate the subsequent Java classes. Some of the
> > ObjEntity instances have primary/foreign keys mapped manually because
> > these keys are generated by another process (outside of the Cayenne
> > framework). The schema that I manage is very large and is periodically
> > updated as part of maintenance and new development tasks. In order to
> > update the model (...map.xml file) with the schema changes, I go
> > through a fairly tedious process that involves the following:
> >
> > 1. update database schema
> > 2. copy cayenne configuration files (cayenne.xml, ....map.xml and
> > ...driver.xml) to a temp directory
> > 3. start CayenneModeler
> > 4. open the project from the temp directory
> > 5. run Tools > Reengineer Database Schema
> > 6. when prompted that a table exists, I opt to overwrite it to ensure
> > I get all updates
> > 7. save (temp) project
> > 8. compare the differences between the temp map.xml and original
> > map.xml files, manually copying the updates from the original to the
> > temp file
> > 9. test that I haven't made mistakes by opening the temp project and
> > then double-checking it visually if it loads
> >
> > I do this because the manual mappings in the ObjEntity instances are
> > removed when I run Reengineer Database Schema which does not seem like
> > desired behavior. I would expect manual attribute mappings created in
> > the ObjEntity instances to remain after reengineering a schema if:
> >
> > 1. the same schema is being reengineered
> > 2. the corresponding DbEntity attribute still exists
> >
> > I downloaded the 2.0.4 and 3.0M2 versions of the Modeler to see if the
> > behavior was different. It appears that manually mapped ObjEntity
> > attributes are dropped in all versions under the above scenario.
> >
> > Is there an easier/more efficient way to update my model (map.xml) files?
> >
> > Has anyone else encountered a similar issue?
> >
> > Thank you for your help.
> >
> > - Mike
> >
>
This archive was generated by hypermail 2.0.0 : Tue Nov 27 2007 - 10:36:14 EST