活性変更のワークユニット定義変更フェーズでは、活性変更用に修正したワークユニット定義をInterstageに登録します。
活性変更機能を使用してアプリケーションプログラムの修正を反映するためには、修正したアプリケーションプログラムを、現在動作中のアプリケーションプログラムが格納されているディレクトリとは別ディレクトリに格納し、ワークユニット定義の設定内容を修正後のディレクトリパスに変更する必要があります。
現在動作中のアプリケーションプログラムが格納されているディレクトリに、修正したアプリケーションプログラムを上書きコピーし、アプリケーションプログラムを直接置き換えると、動作中のプログラムが誤動作する可能性があります。
そのため、修正対象のアプリケーションプログラムは、必ず、現在動作中のアプリケーションプログラムが格納されているディレクトリとは別ディレクトリに格納し、ワークユニット定義の「アプリケーションパス」または「アプリケーション使用ライブラリパス」、Javaの場合は「アプリケーション使用クラスパス」を、修正プログラムが格納されたディレクトリに変更し、変更したワークユニット定義を登録してください。
以下の手順で実施してくたさい。
アプリケーションの格納ディレクトリを作成
例
現在動作中のアプリケーションモジュールが「/apl/WU001/svapl」に格納されている場合、新たに「/apl/WU001/svapl_UPDATE1」を作成します。
ワークユニット定義ファイルのバックアップを作成
ワークユニット定義を定義変更する前に、必ず現在動作中のワークユニット定義ファイルのバックアップを作成してください。
ワークユニット定義ファイルの変更
ワークユニット定義の「アプリケーションパス(PATH)」または「アプリケーション使用ライブラリパス(Library for Application)」、または、「アプリケーション使用クラスパス(CLASSPATH for Application)」を、修正モジュールが格納されたディレクトリパスに変更します。
例
PATH: /apl/WU001/svapl_UPDATE1
なお、環境変数などのアプリケーション動作環境を変更する場合は、それらも同時に変更します。
変更後のワークユニット定義ファイルをInterstageに登録
ワークユニット定義変更は、ischangewudefコマンドを使用します。これにより、活性変更後の新環境が使用するワークユニット定義がInterstageに登録されます。
この段階では、現在動作中のワークユニット定義と、活性変更に使用される変更後のワークユニット定義の2つが登録された状態となります。
なお、本コマンドは、該当ワークユニットの状態が運用中(execute)の場合のみ実行することができ、本コマンドを実行することで、通常の運用状態から活性変更中へと変わり、「活性変更のワークユニット定義変更フェーズ」となります。
注意
修正したアプリケーションのモジュールを実行環境に格納する時には、現在動作中のアプリケーションモジュールを置き換えないよう注意してください。万一、置き換えた場合、運用中のワークユニットにおいて異常が発生する可能性があります。ディレクトリ名に版数情報を入れるなどの対応を実施して、必ず別ディレクトリに格納してください。または、修正後の実行モジュール名(ファイル名)に版数情報を入れて、モジュール名を変更することにより、上書きを防止してください。モジュール名を変更した場合は、ワークユニット定義の「Executable File(実行ファイル名)」に修正後のモジュール名を設定し、活性変更を実施してください。
「活性変更のワークユニット定義変更フェーズ」の状態では、「ischangewudef -o」により活性変更用の定義は上書き登録できますが、「活性変更の準備(prepare)フェーズ」以降、活性変更が完了するまでは、本コマンドは実行できません。(活性変更中は、通常の定義登録コマンド「isaddwudef」の実行も抑止されます)
CORBAアプリケーションがライブラリ形式の場合、CORBAアプリケーション定義のintfIDに指定するsolibはライブラリ名のみを指定し、ワークユニット定義のLibrary for Applicationでライブラリ格納先のディレクトリを指定してください。
なお、登録されている活性変更用のワークユニット定義の情報は、isinfchangewudefコマンドで参照することができます。