プロジェクト GlassFish 向けマイグレーションツールの概要他社アプリケーションサーバーからアプリケーションを移行するには、マイグレーション・ツールを使用します。このツールは、旧バージョンのアプリケーションサーバからのアップグレード後に正しく配備できていないアプリケーションを移行する場合にも使用できます。 マイグレーション・ツールは入力アーカイブ、またはソースコードに対して使用することが可能です。ソースアプリケーションのサーバー形式で書かれた実行時配備記述子はツールにより変換され、最新バージョンに準拠した実行時配備記述子が生成されます。また、 JSP および Java ソースコードファイル (ソースコード入力の場合) を解析し、特定のカスタム JSP タグやユーザー独自の API に必要な実行時サポートを提供します。 サポート対象のアプリケーションサーバマイグレーション・ツールは、それ自体が Java のスタンドアロンアプリケーションとして動作し、以下のソース・プラットフォームから GlassFish への Java EE アプリケーションの移行を自動化します。
マイグレーションの仕組みJ2EE 仕様はアプリケーションの要件を広く網羅してはいますが、現在も進化の途上にある標準です。アプリケーションのすべての側面について仕様が網羅されているわけではなく、また、実装の詳細がアプリケーション・プロバイダの裁量に委ねられているようなところもあります。 このような事情もあり、アプリケーションサーバの構成あるいは Java EE モジュールのアプリケーションサーバへの配備形式には、どうしても製品による違いが生じてきます。特定のアプリケーションサーバでのみ使用可能な設定・配備ツールの存在も、こうしたギャップを生み出す要因の一つであるといえるでしょう。 Java EE の仕様自体が絶え間なく変化し続けている事も、アプリケーション・サーバのプロバイダにとって頭の痛い問題です。個々のコンポーネントの API が個別に変更されれば、製品ごとに準拠の度合にばらつきが生じます。加えて、アプリケーション・サーバにはカスタム JSP タグや独自の Java API ライブラリといった付加的な機能やサービスが同梱されるのが一般的で、このような機能の利用もまた、アプリケーションの移植性を損なう原因となっています。 マイグレーション・ツールを使用すると、 Java EE アプリケーションのソース、およびアーカイブのいずれをも移行することが可能です。アーカイブから移行を行う場合、ソースファイルが提供されていなければ、配備記述子のみが移行されます。またアプリケーションのソースが提供されている場合、ツールは以下のソースファイル類の移行を行います:
上記ファイル類はそれぞれがアプリケーションの異なる側面を構成するもので、移行に際しては個々に異なる戦略・手順が必要となります。マイグレーション・ツールは、以下に示すカテゴリごとの一般的なガイドラインに従ってこれらのファイルを移行します。 構成パラメータ・ファイルマイグレーション・ツールはファイル名をもとに構成パラメータ・ファイルを検出します(ファイル名はマイグレーション・ツール上で指定できます) 例 weblogic.properties、server-cfg.xml など アプリケーション・サーバの構成には、インストール先ディレクトリ、HTML ドキュメントや JSP 、サーブレット、エンタープライズ Bean などを配置するディレクトリといった各種パラメータの設定が含まれます。さらに、パフォーマンスやプーリング、クラスタ化、データベース接続に関するパラメータ類も、アプリケーション・サーバの構成に含まれます。 構成パラメータの仕様に含まれる情報はどの製品でもほぼ同じですが、パラメータを特定するための書式は製品ごとに異なります。なお、移行先アプリケーション・サーバのインストールについては注意深く設定が行われている場合が少なくありません。そのため、マイグレーション・ツールは移行先に関する構成パラメータの上書きは行いません。移行先のパラメータのうち問題なく操作できるのは JDBC ソースのみで、マイグレーション・ツールはこの JDBC ソースのパラメータだけを自動的に移行します。ただし、関連のある構成パラメータの情報を含むファイルがマイグレーション・ツールにより作成されますので、システム管理者は移行先アプリケーション・サーバのインストール時にこれらのパラメータを手動で設定してください。 メッセージ駆動型 Bean が JAR ファイル内に含まれる場合、マイグレーション・ツールは JMS に関連するスクリプトを作成します。これらの JMS スクリプトを使用すれば、移行先サーバに JMS のリソースを生成することができます。ツールが作成する JMS スクリプトは buildjms.sh (Solaris) または buildjms.cmd (Windows)という名前になります。また、ツールは移行先サーバに JMS の接続ファクトリ・リソースを生成するため、前述の JMS リソース生成用スクリプトと同じようなスクリプトを作成します。 配備記述子 ( XML ファイル)アプリケーションの配備に関する情報は、エンタープライズ Bean ( EJB、 JAR ファイル)、フロント・エンドの Web コンポーネント (WAR ファイル)、およびエンタープライズアプリケーション (EAR ファイル) の配備記述子で指定します。マイグレーション・ツールは、ファイルの文書タイプ、もしくはファイル名をもとに DD ファイルを検出します(これらの情報はマイグレーション・ツール上から設定可能です)。ファイル名の一例として、 ejb-jar.xml、weblogic-ejb-jar.xml、 {{ibm-bnd.xmi}}などが挙げられます。 Java EE コンポーネントやアプリケーションと外部要素との依存関係の解決にも、配備記述子を使用します。配備記述子に関する Java EE の仕様は、全てのアプリケーション・サーバ製品に共通です。ただし、アプリケーションの実装に依存するコンポーネントは Java EE 仕様ではカバーされておらず、これらについては製品固有の DD ファイルが追加で用いられます。こうした移行元の製品固有の DD ファイルが提供する情報は、マイグレーション・ツールにより、移行先のアプリケーション・サーバ固有の DD ファイルに移行されます。 JSP ソースファイルマイグレーション・ツールは、ファイル名につけられた .jsp という拡張子により JSP ファイルを検出します(この情報はマイグレーション・ツール上で設定可能です)。 JSP ファイルはアプリケーションのプレゼンテーション・レイヤ(フロント・エンド)を実装するのに使用されます。 Java EE にはカスタム・タグを追加して JSP を拡張する方法が規定されており、製品ベンダーは自社の製品に独自のJSP拡張を加えていることがあります。これにより開発者の作業は軽減されますが、反面、こうした製品固有のカスタムタグは JSP ファイルの移植性を損ないます。加えて、 JSP ファイルからは別の Java のソースファイルで定義されたメソッドを呼び出すことができますが、これも Java ソースファイルに関して同様の移植性低下の問題を引き起こします。マイグレーション・ツールには、移行元のアプリケーション・サーバのカスタム JSP タグの機能を提供する Java の実行時ライブラリが同梱されます。また、移植出来ない Java のメソッドは、次のセクションで述べる Java ソースファイルと同じ方法で処理されます。 Java ソースファイルJava ソースファイルにはサーブレット、エンタープライズ Bean 、あるいはその他のヘルパ・クラスなどの種類があります。サーブレットとエンタープライズ Bean は標準の Java EE サービスを呼び出すことができ、加えてヘルパ・クラス内に定義されたメソッドを呼び出すこともできます。 マイグレーション・ツールはJavaソースファイルをファイル名につけられた .java という拡張子により検出します。 Java ソースファイルには、たとえばアプリケーションのビジネス・レイヤを受け持つエンタープライズ Bean があります。通常、サーブレットはアプリケーションのプレゼンテーション・レイヤ(フロント・エンド)を担当しますが、サーブレットにビジネス・ロジックを実装することも可能です。 なお、ベンダーは自社の製品に独自のサービスや固有の Java API を同梱している場合があります。こうした独自 API の使用が、アプリケーションの移植性を損なう主要な原因の一つともなっています。 Java EE は今なお進化の途上にあり、様々な製品がそれぞれに異なるバージョンのJava EE コンポーネント API をサポートしている可能性があります。移行に際してはこの点にも注意を払わなくてはなりません。 マイグレーション・ツールには、固有 Java API (の選択されたサブセット)の機能を提供する Java の実行時ライブラリが同梱されています。 Java の実行時ライブラリは、実際のインタフェースを保持する形で記述されています。 様々な製品の様々なバージョンに対応するため、各固有 API のパッケージ名には製品名、およびバージョンが接頭辞として付加されます。マイグレーション・ツールには、固有 API の存在を確認してパッケージ名に適切な接頭辞を付加するためのJavaパーサが含まれます。このため、アプリケーション・サーバ上で実行している間は、実行時Javaライブラリへの呼び出しが行われることになります。アプリケーションに含まれる JSP ファイルも、 Java ソースファイルと同じ Java パーサにより処理されます。なお、このパーサには Java EE コンポーネントのバージョン不適合を検出・修復する機能も搭載されています。 注意 - 現行のマイグレーション・ツールは、こうした差分の修復に関してごく限定的なサポートのみを提供します。 前へ 次へ 日本語翻訳: Kana. Kotake 英文 (翻訳したバージョン: 5) |