XML データにSQL を使ってAnypoint からデータ連携





XML MuleSoft Connector

XML のJSON エンドポイントを作成するために、HTTP やSQL をCData Mule Connector for XML とともに使用するシンプルなMule アプリケーションを作成します。

CData Mule Connector for XML は、XML をMule アプリケーションから標準SQL でのread 、write。update、およびdelete 機能を可能にします。コネクタを使うことで、Mule アプリケーションでXML のバックアップ、変換、レポートおよび分析を簡単に行えます。

この記事では、Mule プロジェクト内のCData Mule Connector for XML を使用してXML 用のWeb インターフェースを作成する方法を説明します。作成されたアプリケーションを使用すると、HTTP リクエストを使用してXML をリクエストし、結果をJSON として返すことができます。以下のアウトラインと同じ手順を、CData Mule Connector で使用し、230+ の使用可能なWeb インターフェースを作成できます。

  1. Anypoint Studio で新しいMule プロジェクトを作成します。
  2. [Message Flow]にHTTP Connector を追加します。
  3. HTTP Connector のアドレスを設定します。
  4. CData XML Connector をHTTP Connector の後に、同じフロー内に追加します。
  5. 新しい接続を作成または既存の接続を編集し、XML に接続するようにプロパティを構成します。(以下を参照)接続が構成されたら、[Test Connection]をクリックしてXML への接続を確認します。

    See the Getting Started chapter in the data provider documentation to authenticate to your data source: The data provider models XML APIs as bidirectional database tables and XML files as read-only views (local files, files stored on popular cloud services, and FTP servers). The major authentication schemes are supported, including HTTP Basic, Digest, NTLM, OAuth, and FTP. See the Getting Started chapter in the data provider documentation for authentication guides.

    After setting the URI and providing any authentication values, set DataModel to more closely match the data representation to the structure of your data.

    The DataModel property is the controlling property over how your data is represented into tables and toggles the following basic configurations.

    • Document (default): Model a top-level, document view of your XML data. The data provider returns nested elements as aggregates of data.
    • FlattenedDocuments: Implicitly join nested documents and their parents into a single table.
    • Relational: Return individual, related tables from hierarchical data. The tables contain a primary key and a foreign key that links to the parent document.

    See the Modeling XML Data chapter for more information on configuring the relational representation. You will also find the sample data used in the following examples. The data includes entries for people, the cars they own, and various maintenance services performed on those cars.

  6. CData XML Connector を構成します。
    1. [Operation]を[Select with Streaming]に設定します。
    2. [Query type]を[Dynamic]に設定します。
    3. SQL クエリをSELECT * FROM #[message.inboundProperties.'http.query.params'.get('table')] に設定してURL パラメータtable を解析し、SELECT クエリのターゲットとして使用します。他の潜在的なURL パラメータを参照することにより、クエリをさらにカスタマイズできます。
  7. [Transform Message Component]をフローに追加します。
    1. 入力から出力のMap にPayload をマッピングします。
    2. Payload をJSON に変換するには、Output スクリプトを以下のように設定します。
      %dw 1.0
      %output application/json
  8. XML を表示するには、HTTP Connector 用に構成したアドレス(デフォルトではlocalhost:8081) に移動し、table のURL parameter はhttp://localhost:8081?table=people としてテーブル名を渡します。
    people データは、Web ブラウザおよびJSON エンドポイントを使用できるその他のツールでJSON として使用できます。

カスタムアプリでXML をJSON データとして操作するためのシンプルなWeb インターフェースと、様々なBI、レポート、およびETL ツールが完成しました。Mule Connector for XML の30日間無料トライアルをダウンロードして今すぐMule Applications でCData の違いを確認してみてください。