The system performs the following actions on the Java external procedure-specific dictionary tables referenced by the SQLJ database during a REPLACE PROCEDURE request.
- The uniqueness of the Java procedure to be replaced is verified based on its name.
- The EXTERNAL NAME clause for the Java procedure is then examined to determine the JAR being referenced as its source.
When the referenced JAR has been found, the system searches DBC.Jars for the JAR name specified in the EXTERNAL NAME clause.
- The JAR name specified in the EXTERNAL NAME clause must be defined in the database for the REPLACE PROCEDURE request to complete successfully.
If the system does not find the JAR name as an entry in DBC.Jars, the request aborts and returns an error to the requestor.
- Once the new Java procedure has been verified, the system takes 1 of 2 possible paths, depending on whether the named procedure is new or already exists.
IF the procedure … THEN the system … is new adds a row to DBC.Routine_Jar_Usage to indicate that the new Java routine uses the JAR specified in its EXTERNAL NAME clause. already exists updates the row in DBC.Routine_Jar_Usage to indicate that the replacement Java routine uses the JAR specified in its EXTERNAL NAME clause.