IJServerの移行について、以下を説明します。
■バックアップ/リストアについて
Interstage Application Server V7.0(Interstage V7.0)および8.0(Interstage 8.0)で作成したIJServerをバックアップ、およびリストアにより本バージョン・レベルへ移行した場合、V8.0互換モードのIJServerとなりIJServer(IJServer配下を含む)の機能範囲は、Interstage 8.0相当となります。V8.0互換モードのIJServerの説明については、“J2EEユーザーズガイド”の“J2EEアプリケーションが運用される環境(IJServer)”の“V8.0互換モードのIJServer”を参照してください。
本バージョン・レベルの機能を使用する場合は、V9.0以降のIJServerを作成し直して配備を行う必要があります。
Interstage V7.0およびInterstage 8.0で作成したIJServerをバックアップ、およびリストアにより本バージョン・レベルへ移行する場合には、事前にTomcat4.1ベースのServletサービスがインストールされている必要があります。
なお、RHEL5(x86)、RHEL5(Intel64)、RHEL5(IPF)、RHEL6(x86)、RHEL6(Intel64)の場合にはTomcat4.1ベースのServletサービスは提供していないため、V9.0以降のIJServerを作成し直して配備を行う必要があります。
Interstage Application Server V6.0(Interstage V6.0)で作成したIJServerをバックアップ、およびリストアにより本バージョン・レベルへ移行した場合、IJServer(IJServer配下を含む)の機能範囲は、Interstage V6.0相当となります。
既存のIJServerの操作は、Interstage管理コンソールを使用して行います。
既存のIJServerに配備されたアプリケーションの配備解除、および、アプリケーションに対応する画面への遷移は、Interstage管理コンソールの[ワークユニット] > “ワークユニット名” > [アプリケーション状態/配備解除]タブで行ってください。
本バージョン・レベルの機能を使用する場合は、V9.0以降のIJServerを作成し直して配備を行う必要があります。
Interstage V6.0既存のIJServerは、本バージョン・レベルをインストールした後に作成し直すことはできません。Interstage V6.0既存のIJServerに万一のトラブルが発生した場合のため、本バージョン・レベルのインストール後も、環境が整った段階でバックアップを実施することを推奨します。
Interstage V6.0で作成したIJServerをバックアップ、およびリストアにより本バージョン・レベルへ移行する場合には、事前にTomcat4.1ベースのServletサービスがインストールされている必要があります。
なお、RHEL5(x86)、RHEL5(Intel64)、RHEL5(IPF)、RHEL6(x86)、RHEL6(Intel64)の場合にはTomcat4.1ベースのServletサービスは提供していないため、V9.0以降のIJServerを作成し直して配備を行う必要があります。
■V8.0互換モードのIJServerの機能範囲
V8.0互換モードのIJServer(Interstage V7.0/8.0から移行したIJServer含む)の機能範囲はInterstage 8.0相当、Interstage V6.0から移行したIJServerの機能範囲はInterstage V6.0相当ですが、一部異なる機能範囲があります。異なる機能は以下のとおりです。
サービス | 機能 | 変更点 | |||
---|---|---|---|---|---|
新規作成のIJServer | V8.0互換モードのIJServer | Interstage 8.0のIJServer | Interstage V6.0から移行したIJServer | ||
Interstage V7.0/8.0から移行したIJServer | |||||
IJServer全体 | サポートJavaバージョン | 5.0 | 1.4 | 1.4 | 1.4 |
Javaヒープ/Java Permanent領域不足時の制御 | 全OSサポート | 全OSサポート | Solaris、RHEL-AS4(x86)のみサポート | なし | |
Servletサービス | サポート規約 | Servlet2.4/JSP2.0 | Servlet2.3/JSP1.2 | Servlet2.3/JSP1.2 | Servlet2.3/JSP1.2 |
セションリカバリ機能 | 全OSサポート | 全OSサポート | Solaris、RHEL-AS4(x86)のみサポート | なし | |
EJBサービス | Message-driven Beanのアプリケーション最大処理時間監視 (注) | 全OSサポート | 全OSサポート | なし | 全OSサポート |
EJBアプリケーション運用におけるリトライカウントリセット時間(注) | 全OSサポート | 全OSサポート | なし | 全OSサポート | |
Webサービス | WS-I Attachment Profile 1.0に対応した添付ファイル対応 | 全OSサポート | 全OSサポート | なし | なし |
注) IJServerタイプが以下の場合に提供される機能です。
WebアプリケーションとEJBアプリケーションを別JavaVMで運用
EJBアプリケーションのみ運用
■リトライカウントリセット契機の変更について
IJServerのアプリケーション異常終了した場合のリトライカウントのリセット時間は、Interstage 8.0までは、以下のIJServerタイプでは設定できませんでしたが、Interstage V9.0以降では、以下のIJServerタイプでも設定可能になりました。
EJBアプリケーションのみ運用するIJServer
WebアプリケーションとEJBアプリケーションを別JavaVMで運用するIJServerのEJBアプリケーション運用
上記の場合、従来の監視方式では、EJBアプリケーションへのビジネスロジック(Remoteインタフェース)へアクセスする前に、必ずHomeインタフェースメソッド(初期処理)実行が正常終了した時点でリトライカウントがクリアされていましたが、Interstage V9.0以降では、リトライカウントリセット時間で指定した時間が経過すると、リトライカウントがリセットされます。
この変更はV8.0互換モードのIJServerや8.0以前の環境から移行されたIJServerについても適用されるため、必要に応じて再設定してください。
リトライカウントリセット時間はInterstage管理コンソールまたはisj2eeadminコマンドを使用して定義変更が可能です。必要に応じて変更を行ってください。
Interstage管理コンソールの場合
以下の画面の「リトライカウントリセット時間」の値を変更してください。
[ワークユニット] > [IJServer名] > [環境設定]
isj2eeadminコマンドの場合
IJServer定義ファイルの以下の項目の値を変更してください。
IJServer > Common > RetryCountResetTime
■XMLパーサの設定について
Interstage 8.0までは、Crimsonが配備時のXMLパーサとして使用されていました。
Interstage V9.0以降では、IJServerの環境設定で指定したXMLパーサが、配備時のXMLパーサとして使用されるようになりました。
XMLパーサによりサポートしている文字エンコーディングが異なるため、IJServerの環境設定で指定したXMLパーサが、deployment descriptorを記述している文字エンコーディングをサポートしているか確認してください。
なお、従来通りにCrimsonを使用する場合は、IJServerの環境設定でCrimsonが有効となるように設定してください。
また、Webサービスを利用する場合、JAXP1.2以上をサポートしているXMLパーサを指定する必要があります。
Interstage 8.0までは、IJServerの環境設定で「コンテナのWebサービス機能」の定義を“有効”に設定している場合に「使用するXMLパーサの種別」の“その他”にJAXP1.2をサポートしていないXMLパーサ指定してもチェックが行われていませんでしたが、Interstage V9.0以降では、IJServerの環境設定でチェックするように改善されました。
Webサービスを利用する場合は、JAXP1.2以上をサポートしてるXMLパーサを使用するように設定してください。
なお、デフォルトではIJServerの環境設定の「コンテナのWebサービス機能」は“有効”に設定されています。Webサービスを利用しない場合は、この設定を“無効”にすることで、JAXP1.2をサポートしていないXMLパーサを使用することができます。
なお、V8.0互換モードのIJServerやInterstage V8以前で作成されたIJServerについては、従来通りの動作となります。
配備時に使用されるXMLパーサについては、“J2EE ユーザーズガイド”の“配備に必要なXMLパーサの設定”を参照してください。
■Javaバージョンについて
IJServer定義のJDKバージョンにインストールされていないJDKが指定されている場合、本製品のV7.0以前はインストールされているJDKでIJServerを起動していましたが、本製品のV8.0以降ではIJServer起動時にエラーとなります。
起動エラーとなった場合には、IJServerの環境設定で“Javaバージョン”を、インストールされているJavaのバージョンに変更してIJServerを起動してください。
■IJServerのファイル構成について
Interstage V7.0以降、J2EEアプリケーションの配備後の管理単位が、アプリケーション単位からモジュール単位に変更されました。
この変更に伴いIJServerのファイル構成が変更されました。
IJServerのファイル構成については“J2EE ユーザーズガイド”の“IJServerのファイル構成”を参照してください。
Interstage Application Server V6.0(Interstage V6.0)で作成したIJServerをバックアップ、およびリストアにより本バージョン・レベルへ移行した場合、既存のIJServer(IJServer配下を含む)のファイル構成は、Interstage V6.0相当となります。
■[IJServerディレクトリ]/commonについて
Interstage V7.0以降、EARファイル内のWARファイル、ejb-jarファイル、RARファイル以外の資源の展開先が、以下のように変更されました。
| Interstage V6.0以前 | Interstage V7.0以降 |
---|---|---|
仕様: | [IJServerディレクトリ]/common以下 | [IJServer]ディレクトリ]/apps/[アプリケーション名]以下 |
影響: | IJServerの起動時にクラスパスに設定される | クラスパスに設定されない |
Interstage V6.0以前にcommon直下に保管していたJARファイルを、本バージョン・レベルで使用する場合は、以下のいずれかの対応を行う必要があります。
マニフェストクラスパスを使用する
EARファイル内のSharedディレクトリにJARファイルを保管する
[IJServerディレクトリ]/SharedディレクトリにJARファイルを保管する
ワークユニットのクラスパスに設定する
ただし、J2EEの仕様に準拠したEARファイルの作成を行っている場合はマニフェストクラスパスが指定されていますので、上記の対応は不要です。
■IJServerに対するconnectorの配備について
Interstage V6.0ではIJServerにconnectorを配備した場合にも、システム全体で一意な資産として管理され、各IJServerで参照可能でした。
Interstage V7.0以降ではIJServerに配備したconnectorは、IJServer内で管理され、そのIJServer内でのみ参照可能となりました。
Interstage管理コンソールで、[リソース] > [connector]で配備されたconnectorとIJServerに配備されたconnectorが重複した場合は、IJServerのconnectorが優先されます。
■名前変換機能について
Interstage V6.0でのWebアプリケーション、およびEJBアプリケーションの名前変換は、IJServer単位での設定となっていました。
Interstage V7.0以降ではモジュール単位での設定に変更されました。設定はInterstage管理コンソールの各モジュールの画面から行うことが可能です。
これにともない、配備時にIJServer単位の名前変換定義の更新は行われないため、Interstage V6.0では出力されていた下記のメッセージは配備時に出力されなくなりますが、名前変換定義は有効になっています。
IS: 情報: is40902: 名前変換定義を更新しました |
Interstage管理コンソールを使用しない場合の設定方法については、“J2EE ユーザーズガイド”の“名前変換機能”を参照してください。
■名前変換定義で参照名を重複して定義した場合について
名前変換定義は参照名を重複して定義することが可能ですが、Interstage V9.0.0以前では重複定義された場合にどの定義値を有効にするか明確にしていませんでした。
【重複定義の例】 (jdbc/DataSourceが重複している)
------------------------------------------------------------------------------- <res-entry> <res-ref-name>jdbc/DataSource</res-ref-name> ★ 参照名が重複している <datasource-name>DS1</datasource-name> </res-entry> <res-entry> <res-ref-name>jdbc/DataSource</res-ref-name> <datasource-name>DS2</datasource-name> </res-entry> <res-entry> <res-ref-name>jdbc/DataSource</res-ref-name> <datasource-name>DS3</datasource-name> </res-entry> -------------------------------------------------------------------------------
Interstage V9.0.0以前は、以下のように各モジュールにより有効になる定義値が統一されていませんでした。
Interstage V9.0.1/V9.1以降では重複定義された場合、最後の定義値が有効になります(例ではDS3が有効)。
| V9.0.0以前 | V9.0.1/V9.1以降 | |
---|---|---|---|
定義時 | 管理コンソール | 最後の定義値が有効 | 最後の定義値が有効 |
実行時 | J2EEクライアント | 最初の定義値が有効 | 最後の定義値が有効 |
Webアプリケーション | 最初の定義値が有効 | 最後の定義値が有効 | |
EJBアプリケーション | 最後の定義値が有効 | 最後の定義値が有効 |
名前変換を行うアプリケーションがJ2EEクライアントまたはWebアプリケーションの場合、有効になる定義値が変更になることがあります。従来通りに動作させたい場合は、以下のオプションを設定してください。
定義場所 | JavaVMオプション |
定義名 | com.fujitsu.interstage.j2ee.jndi.EbeDef_CheckOrder_FromHead |
定義値 | true |
記述例 | -Dcom.fujitsu.interstage.j2ee.jndi.EbeDef_CheckOrder_FromHead=true |
意味 | J2EEクライアントアプリケーションまたはWebアプリケーションで名前変換定義に定義した値は先頭に定義した値が有効になります。 |
■Interstage Application Server V5.x以前から移行する場合
J2EEアプリケーションをInterstage Application Server V5.x(Interstage V5.x)以前のバージョンから移行する場合には、J2EEアプリケーションをIJServerに配備する必要があります。
Interstage管理コンソールの[ワークユニット] > [新規作成]タブ、または、isj2eeadminコマンドを使用して、IJServerワークユニットを作成してください。そのあと、“ワークユニット名” > [配備]タブで配備を行います。
Interstage管理コンソールの詳細については、Interstage管理コンソールのヘルプを参照してください。
isj2eeadminコマンドについては、“リファレンスマニュアル(コマンド編)”の“isj2eeadminコマンド”を参照してください。
■IJServerのクラスパス自動設定
IJServerのクラスパスは内部的に自動的に設定されます。
CORBAアプリケーションのライブラリとしてはプレインストール型Javaライブラリがクラスパスに常に設定され、Portable-ORB用のライブラリは使用できませんが、V5.1以前のServletサービスでPortable-ORB用のライブラリで動作させていたアプリケーションも、Interstage V6.0以降のIJServerでそのまま動作させることができます。
CORBAサービスの環境定義を変更する場合にはプレインストール型の設定を変更してください。
以下のクラスパスは、V9.0以降のIJServerでは自動設定されません。
JDKのインストールディレクトリ\lib\tools.jar
JDKのインストールディレクトリ/lib/tools.jar
アプリケーションで必要な場合は、“J2EE ユーザーズガイド”の“クラスローダの構成”および“IJServerで使用するクラスの設定について”を参照して設定を行ってください。
■配備解除に失敗した場合について
Interstage Application Server/Interstage Web Server V9.0以降では、配備解除の際にファイルの削除に失敗した場合、手動でファイルの削除を行う必要があります。
配備対象モジュールのファイルのみ残った状態ではモジュールはロードされないため、IJServerの運用に影響を及ぼしませんが、同一モジュールの再配備を行った場合に、モジュールの配備先に不明なファイルが存在することになり、再度削除を促すためのメッセージが出力され、配備処理がエラーとなります。このような場合、不要なファイルを削除してから、配備処理を行ってください。
■クラスのオートリロード機能
Interstage Application Server 8.0までは、クラスのオートリロード機能はモジュール(EAR/WAR/ejb-jar)単位での設定でした。
Interstage Application Server/Interstage Web Server V9.0以降では、設定はIJServer単位に変更されています。個々のモジュールごとに設定を行う必要はありません。
モジュールによりオートリロード機能の設定を切り替える必要がある場合には、モジュールを別のIJServerに配備し、各IJServerで必要であればオートリロードの設定を行ってください。
また、クラスローダの分離の設定に「分離しない」を選択している場合、Interstage 8.0までのIJServerではWebアプリケーション(WAR)のみオートリロード機能が使用可能でしたが、Interstage V9.0以降では、オートリロード機能は使用できません。
他の「クラスローダの分離」の設定とするか、またはモジュールを別のIJServerに配備し、各IJServerで必要であればオートリロードの設定を行ってください。
■クラスローダのトレース機能
Interstage Application Server 8.0までは、クラスローダのトレース機能の設定は、以下で設定可能でした。
Interstage管理コンソール
[ワークユニット] > “ワークユニット名” > [環境設定]タブ > [共通定義] > [クラスローダのトレース情報の出力]
isj2eeadminコマンドのIJServer定義ファイル
IJServerタグ/ClassLoaderタグ/Traceタグ
Interstage Application Server/Interstage Web Server V9.0以降でトレース情報を出力するには、以下でJavaVMオプションを設定します。
Interstage管理コンソール
[ワークユニット] > “ワークユニット名” > [環境設定]タブ > [ワークユニット設定] > [JavaVMオプション]
isj2eeadminコマンドのIJServer定義ファイル
IJServerタグ/ClassLoaderタグ/JavaCommandOptionsタグ
指定値: -Dcom.fujitsu.interstage.j2ee.ijserver.loader.trace=true
■配備時に指定するモジュール名について
Interstage 8.0までは、モジュール名の末尾にピリオドを指定した場合、配備資源の展開が不正なディレクトリに行われることがありました。
Interstage V9.0以降では、モジュール名の末尾にピリオドを指定した場合、配備時にエラーとなり、DEP1833のメッセージが出力されます。
Interstage V9.0以降で配備を行う場合、モジュール名の末尾には、ピリオド以外の文字を指定してください。
モジュール名の詳細については、Interstage管理コンソールのヘルプの配備を参照してください。
なお、モジュール名の末尾にピリオドが指定されたモジュールが配備されているInterstage 8.0以前のIJServerをバックアップ、およびリストアにより本バージョンレベルに移行することは可能です。