Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerMicrosoft Dynamics AX 2012 Connector v2.0
Microsoft Dynamics AX 2012 用 Anypoint Connector (Dynamics AX 2012 Connector) を使用して、Mule アプリケーションは Microsoft Dynamics AX クエリサービスとやりとりすることができます。
このコネクタは次の操作をサポートしています。
AOT テーブルに対してクエリを実行する。
AOT 静的クエリを実行する。
AIF ドキュメントサービスをコールする。
このコネクタは Microsoft Dynamics AX 2012 をサポートしています。
このコネクタを使用するには、以下に精通している必要があります。
Microsoft Dynamics AX
Mule、Mule の概念、Mule フローの要素、グローバル要素
Anypoint Connector
Anypoint Studio
アプリケーションを作成する前に、以下が必要です。
対象リソースへの接続をテストするための Microsoft ログイン情報
インストール済みの Anypoint Windows ゲートウェイサービス
ソフトウェアの要件および互換性情報については、「コネクタリリースノート」を参照してください。
<dependency>
<groupId>com.mulesoft.connectors</groupId>
<artifactId>mule-microsoft-dynamics-ax-connector</artifactId>
<version>x.x.x</version>
<classifier>mule-plugin</classifier>
</dependency>
x.x.x
を使用しているコネクタに対応するバージョンに置き換えます。
最新の pom.xml
ファイル情報を取得するには、 Anypoint Exchange でコネクタにアクセスし、[Dependency Snippets (連動関係スニペット)] をクリックします。
Windows ゲートウェイサービスエージェントは、Dynamics AX システムサービスをコールしたときにプロトコル変換を実行します。 Dynamics AX システムサービス (メタデータサービス、クエリサービス) は net.tcp プロトコルを使用しますが、Java には実装されません。 このコネクタは要求を実行するために、下図のとおり、Windows ゲートウェイサービス経由で要求を転送します。
コネクタが HTTP 要求を Windows ゲートウェイサービスに送信します。
Windows ゲートウェイサービスが HTTP 要求を受け取ります。
Windows ゲートウェイサービスが、netTcp プロトコルを使用して、Dynamics AX システムサービスに対して要求を実行します。
Windows ゲートウェイサービスエージェントが、Dynamics AX システムサービスから応答を受け取ります。
Windows ゲートウェイサービスエージェントが、HTTP 経由で応答をコネクタに送信します。
コネクタが応答を受信します。
Anypoint Platform と Windows ゲートウェイサービス間の通信はすべて SSL によって認証され保護されます。
Anypoint Studio には、Studio プロジェクトにコネクタを追加する 2 つの方法があります。Studio タスクバーの Exchange ボタンから追加するか、[Mule Palette (Mule パレット)] ビューから追加します。
Studio で Mule プロジェクトを作成します。
Studio タスクバーの左上にある Exchange アイコン (X) をクリックします。
Exchange で、[Login (ログイン)] をクリックし、Anypoint Platform のユーザー名とパスワードを指定します。
Exchange で、「ax」を検索します。
コネクタを選択して [Add to project (プロジェクトに追加)] をクリックします。
画面の指示に従ってコネクタをインストールします。
Studio で Mule プロジェクトを作成します。
[Mule Palette (Mule パレット)] ビューで、[(X) Search in Exchange ((X) Exchange 内を検索)] をクリックします。
[Add Modules to Project (モジュールをプロジェクトに追加)] で、検索項目に「ax」と入力します。
[Available modules (使用可能なモジュール)] で、このコネクタの名前をクリックします。
[Add (追加)] をクリックします。
[Finish (完了)] をクリックします。
コネクタの操作を Studio キャンバスにドラッグします。
一般設定で次の項目に入力します。
Company (会社): すべてのコール内で使用する会社を設定します。
Language (言語): すべてのコール内で使用する言語を設定します。
Log on as user (ユーザーとしてログオン): すべてのコール内で使用するユーザーを設定します。
Message id (メッセージ ID): すべてのコール内で使用するメッセージ ID を設定します。
Partition key (パーティションキー): すべてのコール内で使用するパーティションキーを設定します。
接続パラメーター:
パラメーター | 説明 |
---|---|
Username (ユーザー名) |
Dynamics AX に接続するユーザー名。 |
Password (パスワード) |
Dynamics AX に接続するためのパスワード。 |
AOS Server Name (AOS サーバー名) |
アプリケーションオブジェクトサーバーを実行しているサーバーの名前または IP。 |
AOS Services WSDL Port (AOS サービス WSDL ポート) |
サービス WSDL を実行するポート番号。デフォルトは、 |
Gateway Router Service Url (ゲートウェイルーターサービス URL) |
Windows ゲートウェイサービスのアドレス (ホストとポート)。このアドレスは通常 |
高度な接続の場合は、次の項目に入力します。
AOS Endpoint Port (AOS エンドポイントポート) (省略可能) - この設定を使用して、サービスの WSDL ドキュメントにあるサービスエンドポイントを上書きします。
Connect Timeout (接続タイムアウト) - コネクタ要求の接続タイムアウトの設定に使用します。この省略可能な値の単位はミリ秒です (無制限のタイムアウトは 0)。
Receive timeout (受信タイムアウト) - コネクタ要求の受信タイムアウトの設定に使用します。この値はミリ秒単位で、省略可能です。
フローに HTTP リスナーを追加します。
緑のプラス記号をクリックして設定します。
[Host (ホスト)] を「localhost」、[Port (ポート)] を「8080」に設定します。
[OK] をクリックします。
Microsoft Dynamics AX パレットから Query Table 操作を追加します。
緑のプラス記号をクリックして接続を設定します。
上記の項目を設定します。
[Query (クエリ)] パラメーターに「dsql:Select Name from ProjTable
」と入力します。
[Transform Message (メッセージの変換)] を追加して、次のとおり設定します。
%dw 2.0
output application/json
payload
localhost:8080
に対して curl を実行します。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:microsoft-dynamics-ax="http://www.mulesoft.org/schema/mule/microsoft-dynamics-ax"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/microsoft-dynamics-ax
http://www.mulesoft.org/schema/mule/microsoft-dynamics-ax/current/mule-microsoft-dynamics-ax.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
<configuration-properties file="mule-app.properties"/>
<http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config">
<http:listener-connection host="localhost" port="8082"/>
</http:listener-config>
<microsoft-dynamics-ax:dynamics-ax-config name="Microsoft_Dynamics_AX_Dynamics_AX"
doc:name="Microsoft Dynamics AX Dynamics AX">
<microsoft-dynamics-ax:soap-connection disableCnCheck="true"
gatewayRouterServiceAddress="${gateway-connection-config.gatewayRouterServiceAddress}"
username="${gateway-connection-config.username}"
password="${gateway-connection-config.password}"
aosServerName="${gateway-connection-config.aosServerName}"
aosWsdlPort="${gateway-connection-config.aosWsdlPort}"/>
</microsoft-dynamics-ax:dynamics-ax-config>
<flow name="dynamics-old-ax-demoFlow2">
<http:listener doc:name="Listener" config-ref="HTTP_Listener_config" path="/query"/>
<set-payload value="#[attributes.queryParams.queryToExecute]" doc:name="Set Payload"/>
<microsoft-dynamics-ax:query-table itemsPerPage="5" doc:name="Query table"
config-ref="Microsoft_Dynamics_AX_Dynamics_AX">
<microsoft-dynamics-ax:query>#[payload]</microsoft-dynamics-ax:query>
</microsoft-dynamics-ax:query-table>
<ee:transform doc:name="Transform Message">
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
</ee:message>
</ee:transform>
</flow>
</mule>
Run a query against an AOT table (AOT テーブルに対するクエリの実行)
Run an AOT static query (AOT 静的クエリの実行)
Call an AIF Document Service (AIF ドキュメントサービスのコール)