製品をチェック

製品の情報と30日間無償トライアル

XML 連携ソリューション 相談したい

XML データをOData 外部オブジェクトをSalesforce に設定して連携利用

API Server を使ってXML のOData サービスを作成し、クラウドアプリケーションからのアクセスを可能にします。Salesforce からXML のOData サービスを外部オブジェクトとして設定して利用します。

古川えりか
コンテンツスペシャリスト

最終更新日:2022-09-19

こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。

CData API Server はXML (および 250+ の他のクラウドデータソース)をOData API 化し、Salesforce の画面やSalesforce1 のようなモバイルアプリケーションでの利用を実現します。 この記事では、API Server によりXML データを外部オブジェクトとしてSalesforce Connect に設定して、Salesforce の標準オブジェクトと同感覚で使用する方法を説明します。
Salesforce 外部オブジェクトでXML にデータ連携。

API Server の設定

次のステップに従い、セキュアなXML OData サービスを立ち上げます:

デプロイ

API Server はサーバー上で稼働します。Windows 版は、製品に組み込まれているスタンドアロンのサーバーかIIS に配置して稼働させることができます。Java 版では、Java servlet コンテナにAPI Server のWAR ファイルを配置します。 デプロイの詳細は製品ヘルプを参照してください。API Server をAzure、Amazon EC2、Heroku にデプロイする方法はKB に記事があります。

XML への接続

サーバーへのデプロイ後に、API Server の管理コンソールで[設定]→[接続]から新しい接続を追加してXML を追加します。 XML への接続に必要な認証情報を入力します。接続のテストを行い、接続を確認して、設定を保存します。

データソースを認証するには、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。 データプロバイダーはXML API を双方向データベーステーブルとしてモデル化し、XML ファイルをread-only ビュー(ローカルファイル、人気のクラウドサービスに格納されたファイル、およびFTP サーバー)としてモデル化します。 HTTP Basic、Digest、NTLM、OAuth、およびFTP を含む主な認証スキームはサポートされています。認証のガイドについては、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。

URI と認証値を設定した後で、DataModel を設定することでデータの構造によりよくマッチするようデータの抽象化を調整できます。

DataModel プロパティはデータがどのようにテーブルとして抽象化されるかを制御するプロパティであり、次の基本的な設定を調整します。

  • Document(デフォルト):XML データのトップレベルのドキュメントビューをモデル化します。データプロバイダーは入れ子化した要素をデータの集約値として返します。
  • FlattenedDocuments:入れ子化したドキュメントとその親を結合して単一のテーブルに入力します。
  • Relational:個別の関連テーブルを階層化されたデータから返します。テーブルは主キーと、親ドキュメントにリンクする外部キーを含みます。

リレーショナルな抽象化の設定についての詳細は、「XML データのモデリング」セクションを参照してください。次の例で使用されているサンプルデータも存在します。 このデータには、人名、その人たちが所有する車、車に施されたさまざまなメンテナンスに関する情報が含まれます。

接続を確立後、[設定]→[リソース]の画面でXML からOData API として公開するエンティティを選択します。

API Server のユーザー設定

[設定]→[ユーザー]からAPI にアクセスできるユーザーの認証設定を行います。API Server はトークンでの認証を行うことができます。 IP アドレスでAPI へのアクセスを制限することも可能です。デフォルトではローカルマシンからのアクセスのみが許可されています。SSL の設定も可能です。

XML データにOData サービスとしてアクセス

次のステップでAPI Server で生成されたOData フィードを接続します。

  1. Salsforce にログインし、[設定]→[開発]→[外部システムへの接続を管理する]をクリックします。
  2. [新規外部データソース]をクリックします。
  3. Enter values for the following properties:
    • 外部データソース: Salesforce ユーザインターフェースに表示する表示ラベル
    • 名前: 一意の識別子
    • 種別: "Salesforce Connect: OData 4.0" を選択。
    • URL: API Server のOData エンドポイントのURL を設定します。フォーマットは、https://your-server:your-port.rsc.

      です。

      プレーンテキストはテストのみに使用し、本番ではTSL の仕様を推奨します。

  4. [書き込み可能外部オブジェクト]オプションにクリックを入れます。
  5. 形式メニューでは、JSON を選択します。

  6. 認証セクションで、次のプロパティを設定します:
    • ID 種別: 組織のすべてのメンバーが同じ認証情報でAPI Server にアクセスする場合には[指定ユーザー]を指定します。組織のメンバーがそれぞれの認証情報を使う場合には[ユーザ]を指定します。
    • 認証プロトコル: ベーシック認証には、[パスワード認証]を選択します。
    • 証明書: Salesforce からサーバーへの通信を暗号化し認証するには証明書を指定します。
    • ユーザ名: API Server に登録されたユーザー名。
    • パスワード: ユーザーのAuth トークン。
Configuration settings for the data source. (NetSuite is shown.)

XML オブジェクトの同期

外部オブジェクトを作成したら、次のステップでXML 外部オブジェクトのデータソース側の変更を反映させます。 XML テーブルの定義とXML 外部オブジェクトの定義を同期する必要があります。

  1. 作成した外部オブジェクトをクリックします。
  2. [検証して同期]をクリックします。
  3. 外部オブジェクトとして作業するXML テーブルを選択し、[同期]します。

Salesforce オブジェクトとしてXML データにアクセス

XML を外部オブジェクトとして設定したので、Salesforce 標準オブジェクトと同じようにアクセスが可能になりました。

  • フィルタリストビューで新しいタブを作成:

    A filtered list view shown on a custom tab. (NetSuite Invoices are shown.)
  • XML 外部オブジェクトの関連テーブルを標準セールスフォースオブジェクトのように表示する:

    A related list that shows an indirect lookup relationship, which links a child external object to a parent standard object. (Salesforce accounts and associated NetSuite invoices are shown.)
  • Salesforce dashboard からXML データをCRUD できます: Editing external objects from the Salesforce dashboard. (NetSuite Employees are shown.)

トラブルシューティング

以下によく質問がある接続の問題についてリストします:

  • サーバーがインターネットにつながるIP アドレスを有していること。アプリケーションレイヤーでそのIP アドレスからのアクセスが許可されていること。

    API Server をホスティングしているサーバーがTLS 1.1 以上を使っていること。Windows 版のAPI Server の組み込みサーバーはこれに準拠しています。

    IIS の場合には、TLS 1.1 および1.2 がサポートされていますが、デフォルトでは有効化されていません。 これらのプロトコルを有効化するにはhow-to on MSDN および Microsoft technical referenceを参照してください。

    Java 版の場合、Java 8では、TLS 1.2 がデフォルトでサポートされていますが、Java 6、7 ではサポートされていません。 もしJava 7以前のベージョンを利用している場合、 this Oracle how-to を参照してください。

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。