第4章 ツールとヒント
4.1. 移行に役立つリソース リンクのコピーリンクがクリップボードにコピーされました!
4.1.1. 移行に役立つリソース リンクのコピーリンクがクリップボードにコピーされました!
- ツール
- 設定変更の一部を自動化するのに役立つツールが複数あります。詳細については、 「移行に便利なツールについて理解する」を参照してください。
- デバッグのヒント
- アプリケーションの移行時に発生する問題やエラーの最も一般的な原因と解決法については、 「移行の問題のデバッグと解決」を参照してください。
- 移行の例
- JBoss EAP 6 へ移行されたアプリケーションの例については、 「サンプルアプリケーションの移行の確認」を参照してください。
4.1.2. 移行に便利なツールについて理解する リンクのコピーリンクがクリップボードにコピーされました!
移行に便利なツールは複数あります。これらのツールとその説明の一覧は次のとおりです。
- Tattletale
- モジュラークラスローディングの変更に伴い、アプリケーション依存関係を検索し、修正する必要があります。Tattletale は依存するモジュールの名前を特定し、アプリケーションに対して設定 XML を生成する時に便利なツールです。
- IronJacamar 移行ツール
- JBoss EAP 6 ではデータソースとリソースアダプターは個別のファイルに設定されていません。データソースとリソースアダプターはサーバー設定ファイルに定義され、新しいスキーマを使用します。IronJacamar 移行ツールは以前の設定を JBoss EAP 6 が想定する形式に変換するときに便利です。
4.1.3. Tattletale を用いたアプリケーション依存関係の検索 リンクのコピーリンクがクリップボードにコピーされました!
JBoss EAP 6 のモジュラークラスローディングの変更に伴い、アプリケーションを移行する時に JBoss ログに ClassNotFoundException または ClassCastException トレースが記録されることがあります。このエラーを解決するには、例外が指定するクラスが含まれる JAR を探す必要があります。
jboss-deployment-structure.xml ファイルが含まれるようにすることが可能です。
手順4.1 Tattletale をインストールおよび実行してアプリケーションの依存関係を検索する
注記
4.1.4. Tattletale のダウンロードとインストール リンクのコピーリンクがクリップボードにコピーされました!
手順4.2
- http://sourceforge.net/projects/jboss/files/JBoss%20Tattletale より Tattletale バージョン 1.2.0.Beta2 またはそれ以降のバージョンをダウンロードします。
- 希望のディレクトリーにファイルを展開します。
- 次のように
TATTLETALE_HOME/jboss-tattletale.propertiesファイルを変更します。ee6とas7をprofilesプロパティーに追加します。profiles=java5, java6, ee6, as7
profiles=java5, java6, ee6, as7Copy to Clipboard Copied! Toggle word wrap Toggle overflow scanとreportsプロパティーをアンコメントします。
注記
4.1.5. Tattletale レポートの作成および確認 リンクのコピーリンクがクリップボードにコピーされました!
手順4.3
- 次のコマンドを実行して Tattletale レポートを作成します。
java -jarTATTLETALE_HOME/tattletale.jarAPPLICATION_ARCHIVEOUTPUT_DIRECTORYたとえば、java -jar tattletale-1.2.0.Beta2/tattletale.jar applications/jboss-seam-booking.ear output-results/となります。 - ブラウザーで
OUTPUT_DIRECTORY/index.htmlファイルを開き、「Reports」セクション下の「JBoss EAP 6」をクリックします。- 左側の列にはアプリケーションによって使用されるアーカイブが一覧表示されます。ARCHIVE_NAME リンクをクリックし、場所やマニュフェスト情報、含まれるクラスなどアーカイブの詳細を表示します。
- 右側の列にある
jboss-deployment-structure.xmlリンクは、左側の列に名前が表示されているアーカイブのモジュール依存関係を指定する方法を表示します。このリンクをクリックし、アーカイブのデプロイメント依存関係モジュール情報を定義する方法を確認します。
注記
4.1.6. IronJacamar ツールを使用してデータソースとリソースアダプターの設定を移行する リンクのコピーリンクがクリップボードにコピーされました!
以前のバージョンのアプリケーションサーバーでは、ファイル名が *-ds.xml で終わるファイルを使用してデータソースとリソースアダプターが設定されデプロイされました。IronJacamar 1.1 ディストリビューションには、これらの設定ファイルを JBoss EAP 6 が想定する形式に変換できるツールが含まれています。このツールは、以前のリリースよりソースの設定ファイルを解析し、XML 設定を作成してファイルを新しい形式で出力します。この XML を、JBoss EAP 6 のサーバー設定ファイルにある正しいサブシステム下にコピーおよび貼り付けできます。このツールは、できる限り以前の属性や要素を新しい形式に変換しますが、生成されたファイルに変更を追加する必要がある場合があります。
手順4.4 IronJacamar 移行ツールのインストールと実行
注記
4.1.7. IronJacamar 移行ツールのダウンロードとインストール リンクのコピーリンクがクリップボードにコピーされました!
注記
手順4.5
- IronJacamar 1.1 以降のディストリビューションを http://www.jboss.org/ironjacamar/downloads/ よりダウンロードします。
- 希望のディレクトリーにダウンロードしたファイルを展開します。
- IronJacamar ディストリビューションのコンバータースクリプトを探します。
- Linux スクリプトは、
IRONJACAMAR_HOME/doc/as/converter.shにあります。 - Windows バッチファイルは、
IRONJACAMAR_HOME/doc/as/converter.batにあります。
注記
4.1.8. IronJacamar 移行ツールを使用したデータソース設定ファイルの変換 リンクのコピーリンクがクリップボードにコピーされました!
手順4.6
- コマンドラインを開き、
IRONJACAMAR_HOME/docs/as/ディレクトリーへ移動します。 - 以下のコマンドを入力して、コンバータースクリプトを実行します。
- Linux の場合:
./converter.sh -dsSOURCE_FILETARGET_FILE - Microsoft Windows の場合:
./converter.bat -dsSOURCE_FILETARGET_FILE
SOURCE_FILEは以前のリリースのデータソース -ds.xml ファイルです。TARGET_FILEに新しい設定が含まれます。例えば、カレントディレクトリーにあるjboss-seam-booking-ds.xmlデータソース設定ファイルを変換するには、以下のように入力します。- Linux の場合:
./converter.sh -dsjboss-seam-booking-ds.xmlnew-datasource-config.xml - Microsoft Windows の場合:
./converter.bat -dsjboss-seam-booking-ds.xmlnew-datasource-config.xml
データソース変換のパラメーターは-dsになります。 - ターゲットファイルから
<datasource>要素をコピーし、<subsystem xmlns="urn:jboss:domain:datasources:1.1"><datasources>要素下のサーバー設定ファイルに貼り付けます。重要
変更がサーバーの再起動後にも維持されるようにするには、サーバー設定ファイルの編集前にサーバーを停止する必要があります。- 管理対象ドメインで実行している場合は、XML を
EAP_HOME/domain/configuration/domain.xmlファイルにコピーします。 - スタンドアロンサーバーとして実行している場合は、XML を
EAP_HOME/standalone/configuration/standalone.xmlファイルにコピーします。
- 新しい設定ファイルに生成された XML を変更します。以下に、JBoss EAP 5.x に同梱された Seam 2.2 Booking サンプルの
jboss-seam-booking-ds.xmlデータソースの例を示します。以下はコンバータースクリプトを実行して生成された設定ファイルになります。生成されたファイルにはCopy to Clipboard Copied! Toggle word wrap Toggle overflow <driver-class>要素が含まれます。JBoss EAP 6 では、<driver>要素を使用してドライバークラスを定義する方法が推奨されます。<driver-class>要素がコメントアウトされ、対応する<driver>要素が追加された JBoss EAP 6 の設定ファイルにある XML は次のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注記
4.1.9. IronJacamar 移行ツールを使用したリソースアダプター設定ファイルの変換 リンクのコピーリンクがクリップボードにコピーされました!
手順4.7
- コマンドラインを開き、
IRONJACAMAR_HOME/docs/as/ディレクトリーへ移動します。 - 以下のコマンドを入力して、コンバータースクリプトを実行します。
- Linux の場合:
./converter.sh -raSOURCE_FILETARGET_FILE - Microsoft Windows の場合:
./converter.bat -raSOURCE_FILETARGET_FILE
SOURCE_FILEは以前のリリースのリソースアダプター -ds.xml ファイルです。TARGET_FILEには、新しい設定が含まれます。例えば、カレントディレクトリーにあるmttestadapter-ds.xmlリソースアダプター設定ファイルを変換するには、以下のように入力します。- Linux の場合:
./converter.sh -ramttestadapter-ds.xmlnew-adapter-config.xml - Microsoft Windows の場合:
./converter.bat -ramttestadapter-ds.xmlnew-adapter-config.xml
リソースアダプター変換のパラメーターは-raになります。 - ターゲットファイルから
<resource-adapters>要素全体をコピーし、<subsystem xmlns="urn:jboss:domain:resource-adapters:1.1">要素下のサーバー設定ファイルに貼り付けます。重要
変更がサーバーの再起動後にも維持されるようにするには、サーバー設定ファイルの編集前にサーバーを停止する必要があります。- 管理対象ドメインで実行している場合は、XML を
EAP_HOME/domain/configuration/domain.xmlファイルにコピーします。 - スタンドアロンサーバーとして実行している場合は、XML を
EAP_HOME/standalone/configuration/standalone.xmlファイルにコピーします。
- 新しい設定ファイルに生成された XML を変更します。以下に、JBoss EAP 5.x TestSuite の
mttestadapter-ds.xmlリソースアダプター設定ファイルの例を示します。以下はコンバータースクリプトを実行して生成された設定ファイルになります。生成された XML ファイルのクラス名属性値 「FIXME_MCF_CLASS_NAME」を管理対象接続ファクトリー (この例では、「org.jboss.test.jca.adapter.TestManagedConnectionFactory」) の正しいクラス名に置き換えます。JBoss EAP 6 の設定ファイルにあるCopy to Clipboard Copied! Toggle word wrap Toggle overflow <class-name>要素値が変更された XML は次のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注記