プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle RightNow Cloudアダプタの使用
12.2.1.1.0
E79310-01
目次へ移動
目次

前
前へ
次
次へ

Oracle RightNow Cxスキーマの多相動作の処理

Oracle Cloud Connect Web Services for SOAPによって、RNObject (すべてのプライマリRightNowオブジェクト・クラスのベース・クラス)の1つ以上のインスタンスを受け入れる(または返す)複数の操作が定義されます。

この機能によって、同じ操作が多相的に動作するため、入力値と戻り値はRNObjectの導出クラスのどのインスタンスにもなることができます。

この機能は、プログラム言語のバインディングからサブクラス・インスタンスを渡すことで、およびオブジェクトのシリアライズXMLでxsi:type属性を使用することでこの動作を実行します。xsi:typeは、タイプRNObjectの要素で置換される具象タイプを指定します。この動作によって、Oracle Cloud Connect Web Services for SOAPを使用する開発者は、ベース・クラスのRNObjectから継承された任意のタイプのオブジェクトを操作し、RNObjectのインスタンスを予期する任意の操作にそのオブジェクトを渡すことができます。また、開発者は、RNObjectの返されたインスタンスを適切なサブクラスにキャストできます。多相動作の詳細は、Oracle Service Cloud Connect Web Services for SOAPを参照してください。

この多相的な性質のため、ソース・オブジェクトからターゲット・オブジェクトにマッピングするユーザー・エクスペリエンスは、RNObjectを継承する標準オブジェクトについては少し複雑です。カスタム・オブジェクトとカスタム属性の場合、さらに複雑です。

Oracle RightNowアダプタは、標準オブジェクト、カスタム・オブジェクトおよびカスタム・フィールドの第1級オブジェクトとして要素定義を昇格することで、複雑な変換を作成する際に実行する必要のある手順の数を削減し、ソースからターゲット定義にマッピングする作業を簡略化します。

例: カスタム・オブジェクトのマッピング

次に、Oracle RightNowアダプタがある場合とない場合のカスタム・オブジェクトのマッピング・エクスペリエンスのサンプルを示します。この例は、一般的ではない可能性がありますが、マッピング・エクスペリエンスと、Oracle RightNowアダプタがある場合とない場合の処理の違いを理解するために役立ちます。

最初の例は、Oracle RightNowアダプタを使用しないでOracle RightNowカスタム・オブジェクトをマッピングする方法を示しています。2番目の例は、同じマッピングを示していますが、大幅に簡略化されているところが異なります(アダプタによってプロセスが簡略化されます)。

例: Oracle RightNowアダプタを使用しないオブジェクトのマッピング

この項では、Oracle RightNowアダプタを使用せずにカスタム・オブジェクト・インスタンスを作成する方法について説明します。このシナリオでは、SOAコンポジットを作成し、Webサービス・アダプタを使用してRightNowサービスのクライアントを作成します。次に、XSLTマッパーを使用してクライアント・ソース・スキーマからカスタム・オブジェクト・スキーマへのデータ・マッピングを作成する場合に必要な手順を示します。

図4-1を参照してください。

  1. XSLTエディタのターゲット・スキーマ・ノードRNObjectで、右クリックして「要素またはタイプの置換」を選択し、汎用オブジェクトを選択します。
  2. Object ObjectTypeTypeNameに設定します(RightNowで作成されたRightNow CustomObject名の値)。
  3. GenericFieldsdataTypeに設定します(STRINGやINTEGERなど、カスタム属性のデータ型の値)。
  4. GenericFieldsnameに設定します(カスタム属性の名前)。
  5. GenericFieldsDataValueStringValueに設定します(属性の値)。

図4-1 Oracle RightNowアダプタが生成するWSDLを使用せずにXSLTマッパーを使用してスキーマのRightNowカスタム・オブジェクトをマップする方法



ソース・ビューは次のとおりです。

図4-2 ソース・モードのサンプルXSLファイル

図4-2の説明が続きます
「図4-2 ソース・モードのサンプルXSLファイル」の説明

例: Oracle RightNowアダプタを使用したオブジェクトのマッピング

この項では、Oracle RightNowアダプタを使用してカスタム・オブジェクト・インスタンスを作成する方法について説明します。SOAコンポジットを作成し、Webサービス・アダプタを使用して統合が容易なOracle RightNowアダプタが生成するWSDLのクライアントを作成します。

次の手順によって、XSLTマッパーを使用してクライアント・ソース・スキーマからカスタム・オブジェクト・スキーマへのデータ・マッピングを作成します(スキーマは、厳密に型指定され、Oracle RightNowアダプタが生成する統合が容易なWSDLから参照されます)。カスタム・オブジェクトは、次に示すとおり、直接マッパーのフィールドとなる生成されたローカルWSDLマップの第1クラス・エンティティです。