ヘッダーをスキップ
Oracle Fusion Middleware Oracle TopLink開発者ガイド
11gリリース1(11.1.1)
B56246-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

78 EISマッピングの構成

この章では、EISマッピングの構成方法について説明します。

この章の内容は次のとおりです。

複数のマッピング・タイプに共通のTopLinkマッピング・オプションを構成する方法の詳細は、第121章「マッピングの構成」を参照してください。

TopLinkマッピングの作成方法の詳細は、第120章「マッピングの作成」を参照してください。

78.1 EISマッピング構成の概要

表78-1は、構成可能なEISマッピング・タイプと、そのタイプで対応している構成可能オプションが記載されたタイプ別の章への相互参照を示します。

詳細は、次を参照してください。

78.2 共通EISマッピング・オプションの構成

表78-2は、複数のEISマッピング・タイプによって共有される構成可能オプションを示します。ここで説明する構成可能オプション以外にも、表78-1に示すように、特定のEISマッピングのタイプ(77.1項「EISマッピングのタイプ」を参照)について説明しているオプションも構成する必要があります。

表78-2 EISマッピングの共通オプション

構成オプション Oracle JDeveloper
TopLink Workbench Java

読取り専用(121.2項「読取り専用マッピングの構成」を参照)

サポートされている
サポートされている
サポートされている

インダイレクション(遅延ロード)(121.3項「インダイレクション(遅延ロード)の構成」を参照)

サポートされている
サポートされている
サポートされている

XPath(121.4項「XPathの構成」を参照)

サポートされている
サポートされている
サポートされている

デフォルトのNULL値(121.5項「マッピング・レベルでのデフォルトのNULL値の構成」を参照)

サポートされている
サポートされている
サポートされている

参照ディスクリプタ(78.3項「参照ディスクリプタの構成」を参照)

サポートされている
サポートされている
サポートされている

メソッドまたは直接フィールド・アクセス(121.6項「マッピング・レベルでのメソッドまたは直接フィールド・アクセスの構成」を参照)

サポートされている
サポートされている
サポートされている

プライベート・リレーションシップまたは独立したリレーションシップ(121.7項「プライベート・リレーションシップまたは独立したリレーションシップの構成」を参照)

サポートされている
サポートされている
サポートされている

コメント(121.8項「マッピング・コメントの構成」を参照)

サポートされている
サポートされている
サポートされている

シリアライズ・オブジェクト・コンバータ(121.9項「シリアライズ・オブジェクト・コンバータの構成」を参照)

サポートされている
サポートされている
サポートされている

タイプ変換コンバータ(121.10項「タイプ変換コンバータの構成」を参照)

サポートされている
サポートされている
サポートされている

オブジェクト・タイプ・コンバータ(121.11項「オブジェクト・タイプ・コンバータの構成」を参照)

サポートされている
サポートされている
サポートされている

シンプル・タイプ・トランスレータ(121.12項「シンプル・タイプ・トランスレータの構成」を参照)

サポートされている
サポートされている
サポートされている

コンテナ・ポリシー(121.14項「コンテナ・ポリシーの構成」を参照)

サポートされている
サポートされている
サポートされている

選択インタラクション(78.4項「選択インタラクションの構成」を参照)

サポートされている
サポートされている
サポートされている

単独ノードの使用(121.19項「単独ノードの使用の構成」を参照)

サポートされている
サポートされている
サポートされている

JAXB型保証列挙コンバータ(121.13項「JAXB型保証列挙コンバータの構成」を参照)

サポートされていない
サポートされていない
サポートされている

78.3 参照ディスクリプタの構成

oracle.toplink.mappings.ForeignReferenceMappingまたはoracle.toplink.mappings.AggregateMappingクラスの拡張であるEISマッピングでは、属性が参照するのはその他のTopLinkディスクリプタであり、データ・ソースではありません。現行プロジェクトのディスクリプタを選択することも、他のプロジェクトのディスクリプタを選択することもできます。

表78-3では、どのEISマッピングがこのオプションをサポートしているかを示します。

表78-3 マッピングでの参照ディスクリプタのサポート

マッピング Oracle JDeveloperの使用方法 TopLink Workbenchを使用した参照ディスクリプタの構成方法
Javaの使用方法

ダイレクト・マッピング(77.3項「EISダイレクト・マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない


コンポジット・ダイレクト・コレクション・マッピング(77.4項「EISコンポジット・ダイレクト・コレクション・マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない


コンポジット・オブジェクト・マッピング(77.5項「EISコンポジット・オブジェクト・マッピング」を参照)

サポートされている


サポートされている


サポートされている


コンポジット・コレクション・マッピング(77.6項「EISコンポジット・コレクション・マッピング」を参照)

サポートされている


サポートされている


サポートされている


1対1マッピング(77.7項「EISの1対1マッピング」を参照)

サポートされている


サポートされている


サポートされている


1対多マッピング(77.8項「EISの1対多マッピング」を参照)

サポートされている


サポートされている


サポートされている


トランスフォーメーション・マッピング(77.9項「EISトランスフォーメーション・マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない



78.3.1 TopLink Workbenchを使用した参照ディスクリプタの構成方法

EISマッピングに参照ディスクリプタを指定するには、次の手順を実行します。

  1. ナビゲータでマップされた属性を選択します。そのプロパティがエディタに表示されます。

  2. 「一般」タブをクリックします。「一般」タブが表示されます。

    図78-1 「一般」タブ、「参照ディスクリプタ」フィールド

    図78-1の説明が続きます
    「図78-1 「一般」タブ、「参照ディスクリプタ」フィールド」の説明

「参照ディスクリプタ」フィールドを使用して、このリレーションシップ・マッピングで参照するディスクリプタを選択します。


注意:

1対1および1対多EISマッピングの場合、参照ディスクリプタはルート・ディスクリプタである必要があります。76.6項「EISディスクリプタのタイプ(ルートまたはコンポジット)の構成」を参照してください。

現行TopLink Workbenchプロジェクトにない参照ディスクリプタを指定できます。たとえば、現行プロジェクトにないEmployeeクラスへのマッピングを作成するには、次の手順を実行します。

  1. 現行プロジェクトにEmployeeクラスを追加します。116.2項「プロジェクトの使用」を参照してください。

  2. Employeeディスクリプタへのリレーションシップ・マッピングを作成します。

  3. Employeeディスクリプタを非アクティブ化します。「アクティブおよび非アクティブ・ディスクリプタ」を参照してください。

プロジェクトのデプロイXMLを生成すると、Employeeクラスへのマッピングが組み込まれますが、Employeeクラス自体は組み込まれません。

78.4 選択インタラクションの構成

oracle.toplink.mappings.ForeignReferenceMappingクラスの拡張であるEISマッピングでは、TopLinkは、選択インタラクションを使用して、マッピングが参照するターゲット・オブジェクトのインスタンスを取得します。

デフォルトでは、マッピングの参照ディスクリプタに定義した読取りインタラクションが使用されます(78.3項「参照ディスクリプタの構成」を参照)。通常は、このインタラクションで十分です。参照ディスクリプタの読取りインタラクションでは不十分な場合は、別のインタラクションを定義できます。

表78-4では、どのEISマッピングがこのオプションをサポートしているかを示します。

表78-4 マッピングでの選択インタラクションのサポート

マッピング Oracle JDeveloperの使用方法 TopLink Workbenchを使用した選択インタラクションの構成方法
Javaの使用方法

ダイレクト・マッピング(77.3項「EISダイレクト・マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない


コンポジット・ダイレクト・コレクション・マッピング(77.4項「EISコンポジット・ダイレクト・コレクション・マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない


1対1マッピング(77.7項「EISの1対1マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない


1対多マッピング(77.8項「EISの1対多マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない


コンポジット・オブジェクト・マッピング(77.5項「EISコンポジット・オブジェクト・マッピング」を参照)

サポートされている


サポートされている


サポートされている


コンポジット・コレクション・マッピング(77.6項「EISコンポジット・コレクション・マッピング」を参照)

サポートされている


サポートされている


サポートされている


トランスフォーメーション・マッピング(77.9項「EISトランスフォーメーション・マッピング」を参照)

サポートされていない


サポートされていない


サポートされていない



TopLinkで選択基準が使用される動作の詳細は、77.2.6.2項「参照EISマッピング」を参照してください。

78.4.1 TopLink Workbenchを使用した選択インタラクションの構成方法

EISマッピングに対する選択インタラクション(「オブジェクトの読取り」など)を指定するには、次の手順を実行します。

  1. ナビゲータで1対多のEISマッピングを選択します。そのプロパティがエディタに表示されます。

  2. 「選択インタラクション」タブをクリックします。「選択インタラクション」タブが表示されます。

    図78-2 「選択インタラクション」タブ

    図78-2の説明が続きます
    「図78-2 「選択インタラクション」タブ」の説明

次の情報を参照し、タブの各フィールドにデータを入力します。

フィールド 説明
ファンクション名 このタイプのコール(「オブジェクトの読取り」または「すべて読取り」)がEISに対して起動するEISファンクションの名前。
入力レコード名 入力レコードの作成時に、JCAアダプタに渡される名前。
入力ルート要素名 入力DOMに使用されるルート要素名。
入力引数 引数レコードのインタラクション・フィールドまたはXPathノードにマップされる問合せ引数名。

たとえば、XMLレコードを使用している場合、このオプションを使用して入力引数nameをXPath name/first-nameにマップします。

出力引数 ディスクリプタのマッピングに使用されるレコード内の正しいノードにマップされる、結果のレコード・フィールドまたはXPathノード。

たとえば、XMLレコードを使用している場合、このオプションを使用して出力fnamename/first-nameにマップします。

対話でディスクリプタのマッピングと一致するXML結果が返される場合、出力引数は必要ありません。

入力結果のパス EISインタラクションが、XMLレコードにネストされるインタラクション引数を予期する場合に、このオプションを使用します。

たとえば、引数を最初にルート要素exec-find-orderの下に、次にarguments要素の下にネストする必要がある場合は、argumentsを指定します。

出力結果のパス このタイプのコール(「オブジェクトの読取り」または「すべて読取り」)がEISに対して起動するEISファンクションの名前。
プロパティ EISプラットフォームが必要とするプロパティ。たとえば、プロパティ名operationAQPlatform.QUEUE_OPERATIONから)およびプロパティ値enqueueAQPlatform.ENQUEUEから)。