wsadmin スクリプト・ツールによるインストール済みアプリケーションの更新
wsadmin ツールとスクリプトを使用して、アプリケーション・サーバー上にインストールされたアプリケーションを更新します。
このタスクについて
update コマンドにも updateinteractive コマンドにも、 いくつかのオプションがあります。 エンタープライズ・アーカイブ (EAR) ファイルでサポートされているオプションのリストは、 例えば次のように、options コマンドを使用しても取得できます。
$AdminApp options
print AdminApp.options()
オプションを使用して、バッチ・モードで構成値を設定または更新することができます。設定または更新対象の構成オブジェクトを特定するために、読み取り専用フィールドの 値が、対応する構成オブジェクトの検索に使用されます。 読み取り専用フィールドのすべての値が、既存の構成オブジェクトと一致する必要があります。一致しない場合、コマンドは失敗します。
以下のステップを実行して、アプリケーションを更新します。
手順
次のタスク
システムでアプリケーションが正常にアップデートされた場合、このタスクのステップは、正常終了メッセージを戻します。 しかし、システムが各バイナリー・ファイルを解凍する前に、ステップが正常に完了する場合があります。 例えば、Network Deployment 環境では、バイナリー・ファイルは、ノードの同期が完了した後で解凍されます。システムがすべてのバイナリー・ファイルを解凍するまで、アプリケーションを開始することはできません。 AdminApp オブジェクト用の isAppReady コマンドおよび getDeployStatus コマンドを使用して、アプリケーションを開始する前に、システムがバイナリー・ファイルを解凍したことを確認してください。
システムがアプリケーションを開始する準備ができている場合には、isAppReady コマンドは true の値を戻し、開始の準備ができていない場合は false の値を戻します。システムでアプリケーションを開始する準備ができていない場合、システムがアプリケーションのバイナリー・ファイルを展開している可能性があります。 アプリケーションを更新し、その後でそれを開始するスクリプトでは、以下の例に示すように、通常、isAppReady を true 値が戻るまで繰り返し呼び出してからそのアプリケーションの開始を試みます。
import time
result = AdminApp.isAppReady('application1')
while (result == "false"):
### Wait 5 seconds before checking again
time.sleep(5)
result = AdminApp.isAppReady('application1')
print("Starting application...")
set result [$AdminApp isAppReady application1]
while {$result == "false"} {
### Wait 5 seconds before checking again
after 5000
set result [$AdminApp isAppReady application1]
}
puts "Starting application..."
AdminApp.getDeployStatus('app1')
app1 が DefaultApplication である場合に getDeployStatus コマンドを実行すると、以下のような DefaultApplication に関する状況情報が表示されます。
ADMA5071I: Distribution status check started for application DefaultApplication.
WebSphere:cell=myCell01,node=myNode01,distribution=unknown,expansion=unknown
ADMA5011I: The cleanup of the temp directory for application DefaultApplication is complete.
ADMA5072I: Distribution status check completed for application DefaultApplication.
WebSphere:cell=myCell01,node=myNode01,distribution=unknown,expansion=unknown