UML から JPA への変換の構成

変換で予想どおりの出力を生成するために使用する情報を指定するには、構成のガイドをする新規変換構成ウィザード変換構成エディターを使用します。
このタスクについて

変換構成は、ファイル名拡張子 .tc を持ち、変換が予想通りの出力を生成するために使用する情報が含まれます。また、変換構成には、 特定のタイプの変換に固有の情報も含まれています。既存の変換構成を編集するには、ワークスペース・リソースを示すビューで変換構成ファイルをダブルクリックし、変換構成エディターを開きます。

変換構成ファイルに関する作業を簡略化するには、変換する要素を含むプロジェクトに構成ファイルを保管します。

  1. 作業しているビューに応じて、以下のステップのいずれかを実行します。
    • 「パターン・エクスプローラー」ビューで変換を右クリックし、「新規構成」をクリックします。
    • その他のビューで、「ファイル」 > 「新規」 > 「変換構成」をクリックします。「変換構成」がメニュー項目でない場合は、「ファイル」 > 「新規」 > 「その他」 > 「変換」 > 「変換構成」をクリックします。
  2. 構成の詳細を指定します。新規変換構成ウィザードの「構成名および変換の指定」ページで、以下のステップを完了します。
    1. 名前フィールドに、構成の名前を指定します。
    2. 構成ファイル宛先フィールドで、変換構成ファイルの宛先を指定します。宛先は、現行ワークスペース内の相対パスです。完全修飾プロジェクト名またはフォルダー名を指定できます。プロジェクト内のフォルダーを指定する場合は、フォルダー名の前に接頭部としてスラッシュ (/) を付ける必要があります。
    3. 変換リストから変換を選択します。
      注: インストールされていても使用可能になっていない変換を表示するには、すべての変換の表示をクリックします。 変換は、このリストに表示するには、機能にバインドする必要があります。
  3. プロトコル」セクションでモデリング・プロトコルを指定します。これは、設計規約管理プロトコル (DCMP) とも呼ばれています。選択する値によって、変換のソースとターゲットを同期するかどうかが決定されます。
    • ソース・モデルが基本技術成果物の場合は、概念を選択します。 ソース・モデルへの変更はすべてターゲット・モデルに波及します。
    • ターゲット・モデルが基本技術成果物の場合は、混合をクリックします。 変換により、ソースの成果物は、ターゲットの成果物に直結するビジュアル表示に 変換されます。 ソース・モデルで作業する代わりに ターゲット・ドメイン内で作業する場合、または分析のために成果物を保持する場合に このオプションを選択します。 変換出力は、基本技術成果物になります。
    • ソース成果物が表すアーキテクチャーがターゲットとは独立して発展する場合は、「調整」を選択します。このオプションを選択すると、ソースとターゲットの比較や変更の調整に利用できる 後方変換を使用できるようになります。また、他のチームによって該当のアーキテクチャーが 実装、開発、または保守される場合にも、このオプションを選択することができます。
      注: このオプションを選択すると、「メイン」ページの「後方変換」セクションで、追加のプロパティーが使用可能になります。 一部の変換では、変換構成エディターで追加のページが使用可能になります。 後方変換の構成について詳しくは、下の関連リンクを参照してください。
  4. 「次へ」をクリックします。
  5. 変換のソース要素とターゲット要素を指定します。有効なソース要素とターゲット要素のリストについては、この変換に関する関連概念のトピックを参照してください。 「ソースとターゲット」ページで、以下のステップを実行します。
    1. 選択済みソース」ペインで、変換対象の変換用にソース要素を選択します。
    2. 選択済みターゲット」ペインで、変換出力の宛先を選択します。出力の新規の宛先を作成するには、ターゲット・コンテナーの作成をクリックします。
  6. 「終了」をクリックします。 変換構成エディターが開くと、構成の内容が表示されます。
  7. オプション: UML から JPA への変換の一部として実行される、UML から Java 変換に固有なコード生成プロパティーを指定します。 メイン」ページで、以下の 1 つ以上のステップを実行します。
    • 変換出力で getter メソッドと setter メソッドを生成するには、「getter と setter の生成」チェック・ボックスを選択します。変換によって UML プロパティー用の setter メソッドが生成されるかどうかは、ソース・モデルにあるプロパティーの特定の値に左右されます。
      UML プロパティーの値は「プロパティー」ビューで確認できます。
      • 「一般」ページで、プロパティーの「特化不可」または「読み取り専用」チェック・ボックスを選択した場合、setter メソッドは生成されません。プロパティーの「派生」チェック・ボックスを 選択すると、setter の実装は空になります。
      • 「詳細」ページで、プロパティーの「特化不可」または「読み取り専用」の値を true に設定すると、setter メソッドは生成されません。 プロパティーの「Is Derived」の値を true に設定すると、setter の実装は空になります。
    • Java™ 2 Platform, Standard Edition (J2SE) 5.0 と互換性のあるコードを生成するには、「J2SE 5.0 と互換性のあるコードを生成」チェック・ボックスを選択します。このオプションをクリアすると、変換によって J2SE 1.4 のバージョンと互換性のあるコードが生成されます。このチェック・ボックスは、UML から Java 変換を構成する場合にのみ選択可能です。
    • 変換の実行後に変更されたファイルのみを保存するには、「更新されたファイルのみをディスクに書き込む」チェック・ボックスを選択します。

      このオプションを選択して、大きいモデルを処理する場合に、パフォーマンスが低下することがあります。 これは、変換処理で、更新されたファイルを判別し、更新されなかったファイルをメモリー内のリストから除去する必要があるためです。チーム環境で作業している場合は、不要なチェックアウト操作やチェックアウト操作の取り消しをなくすためにこのチェック・ボックスを選択することもあります。

      このチェック・ボックスをクリアすると、変換によって未変更のファイルがそのメモリー内のリストから除去されることはありません。 変換の実行後、変更されたファイルと未変更のファイルのディスクへの書き込みが試行されます。チーム環境では、変換によって更新されなかったファイルのチェックアウト操作を、手動で取り消す必要がある場合があります。

    • Java プロジェクト依存性をターゲット・プロジェクトに追加するには、「Java プロジェクト依存性の生成」チェック・ボックスを選択します。

      このオプションは、「Java から UML への変換の関連」ページで Java から UML への変換の関連ファイルを作成する際に使用できます。このチェック・ボックスを選択すると、UML から Java への変換で UML 参照が検出された場合に、変換により Java から UML への変換の関連モデルへの参照と比較されます。 UML 参照のマップ先が、変換の現在のターゲットではない Java プロジェクトである場合、変換によりターゲット・プロジェクトに Java プロジェクトの依存性が追加されます。

  8. オプション: UML から Java への変換で生成される、対応する Java ファイルを、 変換の再実行時に削除するかどうかを指定します。 「メイン」ページで、 「廃止された生成済みファイルの削除」セクションのオプションを選択します。 例えば、モデル要素を削除する場合、対応する生成されたファイルを削除したいことがあります。 デフォルトで、変換では、廃止されたファイルは削除されません。
  9. オプション: デバッグ情報を生成するには、「メイン」ページでデバッグ・ログの生成チェック・ボックスを選択します。 次回変換を実行したときに、ログ・ファイルが XML ファイルとして、変換の設定で指定したフォルダーに生成されます。 ログ・ファイルの場所を指定していない場合は、変換によりワークスペースの .metadata フォルダーにログ・ファイルが生成されます。
    ヒント: 変換の設定を行うには、「ウィンドウ」 > 「設定」とクリックし、「モデリング」を展開して、「変換」をクリックします。

    ログ・ファイルは、ソース要素、ターゲット要素、および変換によってソース要素が変換されるときに適用される規則に関する情報を提供します。変換が多数の要素を変換する場合、変換がログ・ファイルを生成している間はパフォーマンスが低下することがあります。そのため、ログ・ファイルを生成するのは、デバッグ目的の場合のみにしてください。

  10. オプション: 変換の実行中に新規ダイアログ・ボックスが開かないようにするには、「メイン」ページでサイレント・モードで前方変換を実行チェック・ボックスを選択します。

    サイレント・モードで変換を実行すると、変換によって生成されるすべてのダイアログ・ボックスが抑制されます。 変換ではデフォルトの規則と振る舞いが適用され、予期しない変換出力や不正確な変換出力が生成されることがあります。サイレント・モードでの変換の実行は、変換出力の検証ではなく、変換の実行を検証する場合のみ実行してください。例えば、自動化されたタスクや自動化されたテスト・スイートの一部として、変換をサイレント・モードで実行することがあります。

    変換がサイレント・モードで実行されるよう設定すると、指定したファイル上書きオプションがオーバーライドされ、必要に応じてファイルが上書きされます。

    JPA から UML への変換が使用可能な場合、サイレント・モードで後方変換を実行チェック・ボックスを選択することができます。JPA から UML への変換、または後方変換をサイレント・モードで実行するよう指定すると、マージ・エディターが抑制されます。マージ中に競合が発生すると、変換が停止します。その場合には、サイレント・オプションをクリアして変換を再実行する必要があります。

  11. オプション: 変換のソースとターゲット間の追跡可能な関係を作成するには、「メイン」ページでトレース関係を作成チェック・ボックスを選択します。このチェック・ボックスは、混合モデリングまたは 調整されたモデリングのプロトコルを選択する場合のみ使用できます。

    トレース関係とビジュアル開発ツールを使用して、ソース・モデル要素と変換出力の関係を理解することができます。 この機能は、複数のモデルおよび変換構成を持つような大規模なプロジェクトの場合に便利です。 ソース・モデルは変換によって変更されません。

  12. オプション: 変換構成に関する文書を指定します。このフィールドは、複数のユーザーが共有する構成に関する情報を伝達する場合に便利です。「メイン」ページの「文書」フィールドに、変換構成についての追加情報を指定します。
  13. オプション: UML から JPA への変換に固有のコード生成プロパティーの値を指定します。「プロパティー」ページで、以下のプロパティーの値を指定してください。
    オプション 説明
    デプロイメント記述子の生成 (Generate a deployment descriptor) デフォルトで、このプロパティーは false に設定され、変換では、ターゲット・プロジェクトの META-INF フォルダーに orm.xml および persistence.xml という名前のファイルは生成されません。代わりに、変換によって、生成された Java コードに JPA 注釈が生成されます。

    変換によって、ソース・モデル内の UML 要素に対応するこれらの XML ファイルおよび XML 要素が生成されるように指定するには、このプロパティーを true に設定します。変換では、対応する JPA 注釈は Java コードに生成されませんし、コード内に以前に生成された注釈は削除されます。

    XML 要素に行った変更を保存するには、対応する <!–@generated –> タグを削除します。

    重複する要素がコードと XML ファイルに存在する場合、XML ファイルに生成された要素は、コード内に生成された注釈をオーバーライドします。

    すべてのエンティティー・クラスに equals および hashCode 演算子を生成 デフォルトで、このプロパティーは false に設定され、変換では、これらの演算子が生成されません。
    これらの演算子を生成するには、次の手順を実行します。
    1. このプロパティーを true に設定します。
    2. プロパティーを含むクラスに «Entity» ステレオタイプを適用して、equals および hashCode 演算子を生成します。
    3. «Id» ステレオタイプをプロパティーに適用します。
    すべてのエンティティー・クラスの名前付き照会の生成 (Generate named queries for all entity classes) デフォルトでは、このプロパティーは true に設定され、変換によって各 JPA エンティティーの名前付き照会が生成されます。変換により、コード内の既存の名前付き照会が上書きされます。

    名前付き照会が生成されないようにして、エンティティー Bean コード内の既存の名前付き照会を保護するには、このプロパティーを false に設定します。

    注: UML から JPA への変換により、Java Persistence API (JPA) エンティティーがどのように生成されるかを調整するため、変換を拡張し、変換拡張のプロパティーを定義することができます。変換の拡張を作成すると、定義したプロパティーが「プロパティー」ページに表示されます。
  14. ソース・プロジェクトの UML コレクション・タイプごとに、 UML から Java 変換により生成される Java コレクション・タイプを指定できます。コレクションは、モデル要素のグループを表します。コレクション・タイプにより、コレクション内に重複モデル要素が存在可能か、またはモデル要素が順序を持つかどうかが決定されます。
    • 「コレクション」ページで、UML コレクション・タイプの各リストで Java コレクション・タイプを選択します。 カスタム値を指定するには、適切なコレクション・フィールドに値を入力します。UML コレクション・タイプについて詳しくは、この変換についての関連概念のトピックを参照してください。
  15. オプション: Java 要素と UML 要素の相互依存性を定義するファイルを作成するため、Java から UML への変換の 関連ファイルを作成します。 このフィーチャーは、変換構成の有効範囲外で、異なるプロジェクトに配置されている可能性のある、 Java 要素と UML 要素との関連を定義する場合、およびコンパイル・エラーを避けるのに役立ちます。 関連ファイルを作成するには、「Java から UML への変換の関連」タブをクリックし、以下のステップを実行します。
    1. 「Java から UML への関連ファイル名」フィールドで、ファイル名を指定します。
    2. 「Java から UML への関連」セクションで、 表の横にあるボタンをクリックして、 ファイルに関連を追加するか、またはファイルから関連を削除します。
    メイン」ページの「Java プロジェクトの依存性の生成」オプションを使用して、Java 要素および UML 要素間の関係の作成を使用可能または使用不可にします。 複数のプロジェクトとそれらの相互依存性のサポートについて詳しくは、下記の関連概念のトピックを参照してください。
  16. オプション: 構成する変換がマッピングをサポートする場合は、マッピング・モデルを作成することで、変換で生成される成果物の代替名を指定できます。新規または既存のマッピング・モデルを使用するには、以下のステップを実行します。
    1. 変換構成エディターの 「マッピング」ページで、「この構成でマッピング機能を使用可能にする」チェック・ボックスを選択します。
    2. マッピング・モデルのファイル名」フィールドで、新規または既存のマッピング・モデルの名前を指定します。
  17. 「ファイル」 > 「保存」をクリックします。
タスクの結果
オプションは次回変換を実行したときに適用されます。

フィードバック