Inserting a Schema into the Schema Hierarchy

You can use the jadclient executable to insert one schema into the schema hierarchy above another schema. This inserts (or moves) an existing schema that has no subschemas to a new position in the schema hierarchy, enabling you to create the new schema in the hierarchy and then use a standard schema load after the insertion processing has completed to deploy the required classes.

Although it is preferable to insert an "empty" schema (that is, one that contains only the Application, Global, and WebSession subclasses, with no properties, constants, or methods on any of these classes), you can insert a non‑empty schema but any entities that conflict with the schema branch into which it is inserted cause the operation to be cancelled.

As a precaution, you should backup your database before inserting a schema and then perform a meta certify of your database after the changes are committed. For details, see "Using the Backup Database Command", in Chapter 1 of the JADE Database Administration Guide and Chapter 5, "JADE Logical Certifier Diagnostic Utility", of the JADE Object Manager Guide.

To insert a schema into the schema hierarchy, specify the following arguments in the jadclient program.

jadclient path=database-path
          ini=jade-initialization-file
          schema=RootSchema
          app=JadeInsertSchema
          server=singleUser
          startAppParameters
          superschema=superschema-name
          subschema=subschema-name

To insert a schema into the schema hierarchy, you must run the executable in single user mode. The schema command line argument value must be RootSchema and the app command line argument value JadeInsertSchema. For example, if the superschema is TestSchema and you want to insert it above CommonSchema, the jadclient command line is as follows.

jadclient path=c:\jade\system ini=c:\jade\system\jade.ini schema=RootSchema app=JadeInsertSchema server=singleUser startAppParameters superschema=TestSchema subschema=CommonSchema

A reorganization is required as part of the schema insertion process.

Before inserting TestSchema above CommonSchema, the schema hierarchy would be like that shown in the following image.

The JadeInsertSchema application reports progress and errors to the InsertSchema.log file in your JADE logs folder. This file contains details of any conflicts that prevent the schema being moved.

After running the JadeInsertSchema application, the schema hierarchy would look like that shown in the following image.

The following restrictions apply to the current release of this feature.