There is a number of cases when it is highly desirable to automate changing of Cayenne configuration files, including cayenne.xml and driver information files:

  • Changing connection information when porting an application from one environment to another: Deployment environment uses different information for the database connections from what was used in development.
  • Deployment of Cayenne libraries: Third party Cayenne libraries may contain DataMaps and business classes, but they normally do not have cayenne.xml file, since ultimate deployment configuration is unknown when the library is created.

Cayenne provides an Ant task called cdeploy that takes care of such things. More information on cdeploy is available here.