ページの先頭行へ戻る
Interstage Studio ユーザーズガイド
Interstage

C.6.1 J2EEコンテナからJava EEコンテナへの移行

ここでは、J2EEコンテナ向けJ2EE1.4アプリケーションをJava EEコンテナ向けに変更する方法を説明します。

注意

以下のアプリケーションはJava EEコンテナ向けに移植することはできません。

  • Webサービス(JAX-RPC)

  • Webサービスクライアント(JAX-RPC)

Webアプリケーション

以下の手順でJava EEコンテナ上で動作可能となります。

  1. プロジェクトのコンテキストメニューからプロパティを選択します。

  2. [ターゲットランタイム]ページで[全てのランタイムを表示]にチェックを入れます。

  3. 表示されたランタイムの中からJava EEのランタイムを選択し、[OK]をクリックします。

EJBアプリケーション

CMPを含まないEJBアプリケーションの移行処理

CMPを含まないEJBアプリケーションについては以下の手順でJava EEコンテナ上で動作可能となります。

  1. プロジェクトのコンテキストメニューからプロパティを選択します。

  2. [ターゲットランタイム]ページで[全てのランタイムを表示]にチェックを入れます。

  3. 表示されたランタイムの中からJava EEのランタイムを選択し、[OK]をクリックします。

CMP2.0の移行処理

CMP2.0についてJava EEコンテナとJ2EEコンテナでは以下の違いがあります。

項目

JavaEEコンテナ

J2EEコンテナ

ターゲットランタイム

JavaEEコンテナ

J2EEコンテナ

CMP拡張情報ファイル

sun-cmp-mappings.xml

FJCMP_XXXX.xml

DB定義情報

sun-ejb-jar.xml

FJCMP_XXXX.xml

DBテーブル情報

XXX.dbschema

なし。

このため、CMP2.0をJava EEコンテナで利用するためにはsun-cmp-mappings.xml、sun-ejb-jar.xml、XXX.dbschemaを新規に生成する必要があります。これらのファイルの生成やターゲットランタイムの変更は、CMP2.0 Java EE環境への更新ウィザードから行います。新規ウィザードから[EJB] > [J2EE] > [CMP2.0 Java EE環境への更新]を選択してください。

以下の設定項目を確認、入力してください。

項目

説明

プロジェクト選択

移行対象のプロジェクトを選択します。
表示されるプロジェクトはCMPを含むEJBプロジェクトです。

「DBスキーマを利用する」

DBスキーマ利用の有無を指定します。

接続リストボックス

作成済みのDB接続一覧が表示され、この中から1つ選択します。

接続の追加

新規DB接続ウィザードを開きます。

接続

接続リストボックスで選択されたDBに接続します。

JNDI名

JavaEEコンテナで利用するDB接続のためのJNDI名を指定します。

情報を設定後、[次へ]をクリックし、以下の項目を設定後、[完了]をクリックしてください。

項目

説明

プロジェクト名

選択したプロジェクトの一覧が表示されます。

EJB名

選択したプロジェクトに含まれるCMPの一覧が表示されます。

テーブル名

CMPに関連付くテーブル情報が表示されます。

スキーマ名

前ページで接続されたDBの情報から、テーブルの利用するスキーマを選択します。
CMP間にリレーションの関連が存在する場合、関連のある全てのCMPのスキーマ情報が変更されます。

注意

CMP2.0 Java EE環境への更新ウィザードはCMP1.1のマイグレーションには対応していません。
CMP2.0、CMP1.1の混在プロジェクトであった場合はCMP2.0のみ移行処理を行い、CMP1.1については移行処理を行いません。
CMP1.1の移行については"CMP1.1の移行処理"を参照してください。

CMP1.1の移行処理

CMP1.1の移行については、以下の作業を行う必要があります。

  1. FJCMP_XXX.xmlからsun-cmp-mapping.xmlへの情報の移行

    CMP1.1のFJCMP_XXX.xmlに記述されている情報をsun-cmp-mapping.xmlへ記述します。

    各項目の関連については以下の通りとなります。

    sun-cmp-mappings.xml


    FJCMP_XXX.xml

    sun-cmp-mappings




    sun-cmp-mapping+




    schema


    fujitsu-cmp-definition/schema-name

    entity-mapping+

    fujitsu-cmp-definition


    ejb-name


    EJB名(ejb-jar.xml/ejb-name)

    table-name

    fujitsu-cmp-definition /table-name

    cmp-field-mapping+

    fujitsu-cmp-definition /field-map


    field-name

    fujitsu-cmp-definition /field-map/field-map-entry/field-name

    column-name+

    fujitsu-cmp-definition /field-map/field-map-entry/dbcolumn-name

    その他の詳細な内容についてはAPSマニュアルを参照してください。

  2. sun-ejb-jar.xmlへのJDOQLクエリの記述

    SQLクエリの仕様が変更されるため、sun-ejb-jar.xmlにSQLクエリ情報をJDOQL形式にて記述します。

    sun-ejb-jar.xmlの<ejb>/<ejb-name>、<ejb>/<cmp>/<one-one-finders>/<finder>

    この項目にJDOQLに乗っ取った記載方式で<method-name>、<query-params>、<query-filter>、<query-ordering>を記述します。

    finderメソッドの記述サンプルは以下となります。

    <ejb>
        <ejb-name>TestCMP11</ejb-name>
        <jndi-name>jdbc/ORACLE</jndi-name>
        <cmp>
            <one-one-finders>
                <finder>
                    <method-name>testMethod</method-name>
                    <query-params>int param1</query-params>
                    <query-filter> id &lt; param1</query-filter>
                </finder>
            </one-one-finders>
        </cmp>
    </ejb>

    詳細な内容についてはAPSマニュアルを参照してください。

  3. DBスキーマファイルの生成

    以下のコマンドを利用してDBスキーマファイルを生成します。

    <Interstage Studioインストールディレクトリ>\APS\F3FMisjee\bin\capture-schema.bat

    コマンドを実行するにあたり以下の情報を指定する必要があります。

    必要項目

    DBユーザ名

    データベース接続ユーザ名

    DBユーザパスワード

    データベースパスワード

    DB接続先URL

    JDBC接続先のURL

    JDBCドライバ名

    利用するJDBCドライバのドライバ名

    出力先ファイルパス

    {ワークスペースディレクトリ}/{プロジェクト}/{ソースディレクトリ}/{sun-cmp-mappings/sun-cmp-mapping/schema}.dbschema

    利用スキーマ名

    fujitsu-cmp-definition/schema-name

    利用テーブル名

    fujitsu-cmp-definition/table-name

    コマンドは以下の形式で実行します。

    capture-schema -username {DBユーザ名} -password {DBユーザパスワード}
     -dburl {DB接続先URL} -driver {JDBCドライバ名} -out {出力ファイルパス}
    [-schemaname {利用スキーマ名}] [-table {利用テーブル名}]*

Earアプリケーション

以下の手順でJava EEコンテナ上で動作可能となります。

  1. プロジェクトのコンテキストメニューからプロパティを選択します。

  2. [ターゲットランタイム]ページで[全てのランタイムを表示]にチェックを入れます。

  3. 表示されたランタイムの中からJava EEのランタイムを選択し、[OK]をクリックします。