Microsoft Excel Online Connector 1.0 の例 - Mule 4

この例では、Microsoft Excel Online Connector を使用して次のアクションを実行する方法を示しています。

始める前に

この例を実行するには、以下が必要です。

  • Anypoint Studio 7.3.5 以降

  • Microsoft Excel Online Connector 1.0 以降

  • Microsoft Excel Online の作業インスタンス

OAuth 認証を設定する

このコネクタでは、OAuth を使用して接続を保護するため、OAuth 項目値 (クライアントログイン情報、キー、OAuth 関連の URL など) を指定する必要があります。次の手順を実行します。

  • OAuth 接続の設定ファイルを作成します。

  • OAuth 関連のグローバル要素を設定します。

  • プロパティファイルのグローバル要素を設定します。

OAuth 接続の設定ファイルを作成する

[​Authorization Code​ (クライアントログイン情報)] 許可種別のプロパティが含まれる OAuth 接続の設定ファイルを作成します。

  1. /src/main/resources/​ フォルダー内に ​mule-app.properties​ という名前のファイルを作成します。

  2. mule-app.properties​ ファイルで、次のような [​Authorization Code​ (認証コード)] 許可種別の一連のプロパティを作成します。括弧で囲まれたテキスト (括弧を含む) は、各自の OAuth 設定の適切な値に置き換えます。

    config.oauth.authorization.code.consumerKey=<consumerKey>
    config.oauth.authorization.code.consumerSecret=<consumerSecret>
    config.oauth.authorization.code.authorizationUrl=<authorizationUrl>
    config.oauth.authorization.code.accessTokenUrl=<accessTokenUrl>

プロパティファイルの作成についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

OAuth グローバル要素を設定する

OAuth_Authorization_Code_Config​ ファイルのグローバル要素を設定します。

  1. 新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで、​[Search in Exchange (Exchange 内を検索)]​ をクリックして「​microsoft excel​」と入力します。

  3. [Selected modules (選択したモジュール)]​ セクションに ​[Microsoft Excel Online Connector]​ を追加し、​[Finish (完了)]​ をクリックします。

  4. [Global Elements (グローバル要素)]​ タブをクリックし、​[Create (作成)]​ をクリックします。

  5. [Connector Configuration (コネクタ設定)] > [Microsoft Excel Online Authorization Code Config (Microsoft Excel Online 認証コード設定)]​ を選択し、​[OK]​ をクリックします。

  6. 次の値を入力します。

    項目

    Name (名前)

    OAuth_Authorization_Code_Config

    Consumer key (コンシューマーキー)

    ${config.oauth.authorization.code.consumerKey}

    Consumer secret (コンシューマーシークレット)

    ${config.oauth.authorization.code.consumerSecret}

    Authorization url (認証 URL)

    ${config.oauth.authorization.code.authorizationUrl}

    Access token url (アクセストークン URL)

    ${config.oauth.authorization.code.accessTokenUrl}

    スコープ

    デフォルト (​https://graph.microsoft.com/.default​) のままにします。

    Listener config (リスナー設定)

    auth

    Callback path (コールバックパス)

    /callback

    Authorize path (認証パス)

    authorizePath

    External callback url (外部コールバック URL)

    http://localhost:8083/callback

  7. [OK]​ をクリックします。

プロパティファイルのグローバル要素を設定する

mule-app.properties​ ファイルのグローバル要素を設定し、このファイルの検索場所が Mule で認識されるようにします。

  1. [Global Elements (グローバル要素)]​ タブをクリックし、​[Create (作成)]​ をクリックします。

  2. [Choose Global Type (グローバル種別の選択)]​ ダイアログで、​[Configuration properties (設定プロパティ)]​ を選択し、​[OK]​ をクリックします。

  3. [File (ファイル)]​ 項目に「​mule.app.properties​」と入力します。

  4. [OK]​ をクリックします。

ワークシートを追加する

次のスクリーンショットは、新しいワークシートを追加する Studio アプリケーションフローを示しています。

Add Worksheet
Figure 1. このようなフローを使用して、新しいワークシートを追加します。

新しいワークシートを追加するには、HTTP ​Listener​ コンポーネント、​Transform Message​ コンポーネント、​Add worksheet​ 操作、​Logger​ コンポーネントを設定する必要があります。

フローを作成する手順は、次のとおりです。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ で​「HTTP」​を検索し、​Listener​ 操作を選択します。

  3. [Listener]​ 操作をキャンバスにドラッグします。

  4. Listener​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[+]​ をクリックしてグローバル要素を追加します。

  5. デフォルトを受け入れます。

  6. [HTTP] プロパティウィンドウで、​[Path (パス)]​ 項目を ​/create​ に設定します。

[Transform Message] コンポーネントを追加する

最初の ​Transform Message​ コンポーネントでは、チームの作成に使用する入力のテンプレートを作成します。

  1. [Mule Palette (Mule パレット)]​ ビューで、​「transform message」​を検索します。

  2. Transform Message​ コンポーネントをキャンバスの ​Listener​ コンポーネントの右にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    <ee:set-payload ><![CDATA[%dw 2.0
    output application/json
    ---
    {
    	workbookId: attributes.queryParams.workbookID,
    	worsheetname: attributes.queryParams.worksheetName
    }]]></ee:set-payload>
    xml

Add Worksheet 操作を追加する

Add Worksheet​ 操作では、ユーザー入力に基づいて新しいワークシートを作成します。

  1. [Add worksheet]​ 操作をキャンバスの ​[Transform Message]​ コンポーネントの右にドラッグします。

  2. [Add worksheet] の設定で、​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、​[Microsoft-Excel-Online-Authorization-Code-Config]​ を選択します。

  3. グローバル要素種別として ​[Microsoft_Excel_Online_Authorization_Code_Config]​ を選択し、​[OK]​ をクリックします。

  4. [Add worksheet] のプロパティウィンドウで、次の項目を設定します。

    項目

    Workbook Id (ワークブック ID)

    payload.workbookId

    Worksheet Name (ワークシート名)

    payload.worsheetname

ワークシートをリストする

ワークシートをリストする 2 番目のフローを作成します。 このフローでは、​List worksheet​ 操作を使用します。

List Worksheet
Figure 2. このようなフローを使用して、ワークシートをリストします。

ワークシートを更新する

ワークシートに関する情報を更新する 3 番目のフローを作成します。 このフローでは、​Update worksheet​ 操作を使用します。

Update Worksheet
Figure 3. このようなフローを使用して、ワークシートに関する情報を更新します。

ワークシートを削除する

ワークシートを削除する 4 番目のフローを作成します。 このフローでは、​Delete worksheet​ 操作を使用します。

Delete Worksheet
Figure 4. このようなフローを使用して、ワークシートを削除します。

アプリケーションを実行する

アプリケーションを実行する手順は、次のとおりです。

  1. Package Explorer でプロジェクトを右クリックし、​[Run As (別のユーザーとして実行)] > [Mule Application (Mule アプリケーション)]​ を選択します。

  2. アプリケーションをデプロイしたら、Web ブラウザーを開きます。

  3. http://localhost:8081/authorize​ という URL を入力して、OAuth ダンスを開始します。

  4. ログイン画面で、Microsoft Excel Online にアクセスするためのログイン情報を入力し、​[Login (ログイン)]​ をクリックします。

  5. [Allow (許可)]​ をクリックします。

  6. 次の表に示すように、関連付けられた URL を入力してフローを開始します。

    Flow URL 注意事項

    ワークシートを追加する

    http://localhost:8081/create?workbookID={workbookID}&worksheetName={worksheetName}Leaving the Site

    ワークシートをリストする

    http://localhost:8081/list?workbookID={workbookID}Leaving the Site

    ワークシートを更新する

    http://localhost:8081/update?workbookID={workbookID}&worksheetName={worksheetName}&worksheetUpdateName={worksheetUpdateName}Leaving the Site

    ワークシートを削除する

    http://localhost:8081/delete?workbookID={workbookID}&worksheetName={worksheetName}Leaving the Site

例の XML

この XML コードをプロジェクトの ​[Configuration XML (設定 XML)]​ タブに貼り付けて、前のセクションで説明したフローを試してください。このコードを貼り付けたら、​[Regenerate 'doc:id' Values (「doc:id」値を再生成)]​ ダイアログで ​[Yes (はい)]​ をクリックします。