How do you migrate a report unit (that is already in production) from your development server to productions without updating the data source when importing?
Problem: We do not want to update the existing data source when importing resources. When migrating a single report unit between Jasper servers the export utility includes all associated resources (including the data source) and the import utility update all resources found in the exported repository catalog - this also include the data source.
Explanation: We have a development Jasper server named JS_DEV and a production server named JS_PROD. To run reports against the correct data source we create a data source called DBsourceX. On the development server this data source access database DBDEV1 and on the production server it access database DBPROD. The report is developed on the development server. To migrate it to production the report unit is exported from JS_DEV and imported on JS_PROD. The export takes all linked resource with, which include DBsourceX. To import into JS_PROD we must use the --update option since the report unit is already on the JS_PROD server. All resources are now updated - also DBsourceX. This causes the production report to access the development database.
Work around at this stage: Edit the exported file DBSourceX.xml and change the database name in the <connectionUrl> to DBPROD prior to running the import. But this is very error prone.