Interstage Application Server/Interstage Web Server 移行ガイド
目次 索引 前ページ次ページ

第6章 J2EEの移行> 6.2 J2EEアプリケーションの移行

6.2.1 IJServerの移行について

 IJServerの移行について、以下を説明します。

バックアップ/リストアについて

Interstage Application Server V7.0/8.0からの移行時

 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)の場合にはTomcat4.1ベースのServletサービスは提供していないため、V9.0のIJServerを作成し直して配備を行う必要があります。

Interstage Application Server V6.0からの移行時

 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)の場合には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作成「しない」で作成)

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.3

1.4

Javaヒープ/Java Permanent領域不足時の制御

全OSサポート

全OSサポート

Solaris、RHEL-AS4(x86)のみサポート

なし

Servletサービス

サポート規約

Servlet2.4/JSP2.0
(Tomcat5.5ベース)

Servlet2.3/JSP1.2
(Tomcat4.1ベース)

Servlet2.3/JSP1.2
(Tomcat4.1ベース)

Servlet2.3/JSP1.2
(Tomcat4.1ベース)

セションリカバリ機能

全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タイプが以下の場合に提供される機能です。

リトライカウントリセット契機の変更について

 IJServerのアプリケーション異常終了した場合のリトライカウントのリセット時間は、本製品の8.0までは、以下のIJServerタイプでは設定できませんでしたが、本製品のV9.0以降では、以下のIJServerタイプでも設定可能になりました。

 上記の場合、従来の監視方式では、EJBアプリケーションへのビジネスロジック(Remoteインタフェース)へアクセスする前に、必ずHomeインタフェースメソッド(初期処理)実行が正常終了した時点でリトライカウントがクリアされていましたが、本製品のV9.0以降では、リトライカウントリセット時間で指定した時間が経過すると、リトライカウントがリセットされます。

 この変更はV8.0互換モードのIJServerや8.0以前の環境から移行されたIJServerについても適用されるため、必要に応じて再設定してください。

 リトライカウントリセット時間はInterstage管理コンソールまたはisj2eeadminコマンドを使用して定義変更が可能です。必要に応じて変更を行ってください。

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以降

仕様:
EARファイル内のWARファイル、ejb-jarファイル、RARファイル以外の資源の展開先

[IJServerディレクトリ]/common以下

[IJServer]ディレクトリ]/apps/[アプリケーション名]以下
※アプリケーション間の独立性を高めたため

影響:
common直下に保管したJARファイルの扱い

IJServerの起動時にクラスパスに設定される

クラスパスに設定されない

 Interstage V6.0以前にcommon直下に保管していた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では重複定義された場合、最後の定義値が有効になります(例ではDS3が有効)。

 

V9.0.0以前

V9.0.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 Application Server/Interstage Web Server V9.0以降でトレース情報を出力するには、以下でJavaVMオプションを設定します。

配備時に指定するモジュール名について

 Interstage 8.0までは、モジュール名の末尾にピリオドを指定した場合、配備資源の展開が不正なディレクトリに行われることがありました。
 Interstage V9.0以降では、モジュール名の末尾にピリオドを指定した場合、配備時にエラーとなり、DEP1833のメッセージが出力されます。
 Interstage V9.0で配備を行う場合、モジュール名の末尾には、ピリオド以外の文字を指定してください。
 モジュール名の詳細については、Interstage管理コンソールのヘルプの配備を参照してください。

 なお、モジュール名の末尾にピリオドが指定されたモジュールが配備されているInterstage 8.0以前のIJServerをバックアップ、およびリストアにより本バージョンレベルに移行することは可能です。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007