カスタマイズされた WAR ファイルの一部がパッチインストーラで保持されず、カスタマイズされていないバージョンで置き換えられる場合があります。WAR ファイルのカスタマイズ内容を特定して手動で更新するには、次の手順に従うとよいでしょう。
次に示す例では、AccessManager-base はベースインストールディレクトリです。デフォルトのベースインストールディレクトリは、Solaris システムの場合は /opt、Linux システムの場合は /opt/sun です。
Windows システムでは、AccessManager-base は javaes-install-directory\AccessManager です。例: C:\Program Files\Sun\AccessManager
パッチが適用される WAR ファイルは次のとおりです。
console.war
password.war
services.war
これらのファイルは、Solaris システムでは AccessManager-base/SUNWam、Linux システムでは AccessManager-base/identity にあります。
Windows システムでは、 パッチが適用される WAR ファイルは AccessManager-base\ にあります。
WAR ファイル内で変更可能な内容は次のとおりです。
プロパティーファイル:
Solaris システム: AccessManager-base/SUNWam/locale/*.properties
Linux システム: AccessManager-base/identity/locale/*.properties
Windows システム: AccessManager-base\locale\*.properties
タグライブラリ記述子:
Solaris システム: AccessManager-base/SUNWam/web-src/applications/WEB-INF/*.tld
Linux システム: AccessManager-base/identity/web-src/applications/WEB-INF/*.tld
Windows システム: AccessManager-base\web-src\applications\WEB-INF\*.tld
web.xml ファイルと、その構築に使用されるファイル (WEB-INF/web.xml と WEB-INF/*.xml)
アプリケーションに固有のファイル。JSP (*.jsp) ファイル、画像 (*.gif) ファイル、およびバックグラウンドカラー、フォントサイズなどのスタイルシート (*.css) ファイル
すべてのカスタマイズ内容を確実に保持するには、次の手順に従います。ファイルに変更を加える前に、必ずファイルをバックアップします。
パッチをインストールします。
WAR ファイルを一時ディレクトリに展開します。たとえば、Solaris システムのデフォルトディレクトリに Access Manager がインストールされている場合は、次のようにします。
# cd temporary-directory # jar -xvf /opt/SUNWam/console.war # jar -xvf /opt/SUNWam/services.war # jar -xvf /opt/SUNWam/password.war
一時ディレクトリで展開されたファイルをチェックして、カスタマイズ済みファイルがパッチインストーラによって変更されたかどうかを確認し、変更されたファイルに元のカスタマイズ内容を手動で追加します。AccessManager-base/web-src/ ディレクトリにあっても、パッチが適用される WAR ファイルに含まれていないファイルについては、変更を追加し直す必要はありません。
変更したファイルを使用して WAR ファイルを更新します。たとえば、Solaris システムのデフォルトディレクトリに Access Manager がインストールされている場合は、次のようにします。
# cd temporary-directory # jar -uvf /opt/SUNWam/console.war $path/$modified file # jar -uvf /opt/SUNWam/services.war $path/$modified file # jar -uvf /opt/SUNWam/password.war $path/$modified file
手順 2 - 4 の例を次に示します。
# mkdir /tmp/war.tmp # cd /tmp/war.tmp # jar -xvf /opt/SUNWam/services.war # vi index.html # jar -uvf /opt/SUNWam/services.war index.html
パッチによって生成されたサイレント設定ファイル (amsilent) を再利用するか、amsamplesilent テンプレートファイルに基づいてサイレント設定ファイルを新規作成し、そのファイルに次を含む適切な設定変数を設定します。
DEPLOY_LEVEL=21
DIRECTORY_MODE=5
DS_DIRMGRPASSWD、ADMINPASSWD、および AMLDAPUSERPASSWD のパスワード
Access Manager Web コンテナの変数
Windows システムでは、postpatch.pl スクリプトによって生成されたサイレント設定ファイル (amsilent) を再利用し、AccessManager-base\setup\AMConfigurator.properties-tmp に有効な値が設定されていることを確認します。次に、このファイルの名前を AccessManager-base\setup\AMConfigurator.properties に変更します。
Web コンテナの変数の詳細については、amsamplesilent ファイルを参照してください。このファイルは、Solaris システムでは /opt/SUNWam/bin ディレクトリ、Linux システムでは /opt/sun/identity/bin ディレクトリにあります。
Windows システムでは、この設定ファイルは AccessManager-base\setup\AMConfigurator.properties です。
amconfig スクリプトを次のように実行します。amconfig を実行するには、Directory Server および Access Manager Web コンテナが稼働している必要があります。たとえば、Access Manager がデフォルトのベースインストールディレクトリにインストールされている Solaris システム上で amconfig を実行するには、次のように入力します。
# cd /opt/SUNWam/bin # ./amconfig -s /opt/SUNWam/amsilent
amconfig スクリプトを実行したあと、Access Manager のプロセスを再起動します。次に例を示します。
# cd /opt/SUNWam/bin # ./amserver stop # ./amserver start
カスタマイズしたすべての JSP ファイルが AccessManager-base/SUNWam/web-src/ ディレクトリ (Solaris システムの場合) または AccessManager-base/identity/web-src/ (Linux システムの場合) の下の適切なサブディレクトリに配置されていること、およびカスタマイズしたすべてのファイルがバックアップされていることを確認します。
Windows システムでは、これらのファイルは AccessManager-base\web-src\ にあります。
Access Manager Web コンテナを再起動します。
amconfig スクリプトの実行の詳細については、『Sun Java System Access Manager 7 2005Q4 管理ガイド』の第 1 章「Access Manager 7 2005Q4 の設定スクリプト」を参照してください。