Flex Gateway新着情報
Governance新着情報
Monitoring API Manager次の例は、Anypoint Studio を使用して Workday Connector を設定する方法を示しています。
この例では、Invoke 操作を使用して、資金を Workday 財務管理サービスに挿入します。
ローカルホストポート 8081 で /
アカウントパスへのコールが行われたときに Mule フローを開始するように HTTP リスナーを設定します。
この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。
コード内で変数を値に置き換える。
プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。
プロパティファイルの使用方法についての詳細は、「プロパティプレースホルダーの設定」を参照してください。
HTTP Listener を設定するには、次の手順に従います。
Studio で新しい Mule プロジェクトを作成します。
[Mule Palette (Mule パレット)] ビューで「http
」を検索し、[Listener] 操作を選択します。
[Listener] 操作をキャンバスにドラッグします。
Listener 設定で、[Connector configuration (コネクタ設定)] 項目の横にある [+] をクリックしてグローバル要素を追加します。
[OK] をクリックして、デフォルトを受け入れます。
[Path (パス)] 項目を /
に設定します。
Transform Message コンポーネントを追加および設定する手順は、次のとおりです。
[Mule Palette (Mule パレット)] ビューで、transform
を検索して [Transform Message] を選択します。
Transform Message コンポーネントをキャンバスの Listener コンポーネントの右にドラッグします。
Transform Message 設定で、[Output (出力)] セクションの括弧を次の XML で上書きします。
%dw 2.0
output application/xml
ns ns0 urn:com.workday/bsvc
---
{
ns0#Put_Fund_Request @(ns0#Add_Only: true, ns0#version: "v36.0"): {
ns0#Fund_Data: {
ns0#Fund_Name: "I.M.F",
ns0#Fund_Type_Reference: {
ns0#ID @(ns0#'type': 'Fund_Type_ID'): "FUND_TYPE-6-3"
}
}
}
}
次の XML は、Transform Message コンポーネントの入力例を示しています。
<ns0:Put_Fund_Request xmlns:ns0="urn:com.workday/bsvc" Add_Only="true" version="v36.0">
<ns0:Fund_Data>
<ns0:Fund_Name>I.M.F</ns0:Fund_Name>
<ns0:Fund_Type_Reference>
<ns0:ID type="Fund_Type_ID">FUND_TYPE-6-3</ns0:ID>
</ns0:Fund_Type_Reference>
</ns0:Fund_Data>
</ns0:Put_Fund_Request>
次のスクリーンショットは、Transform Message 設定の [Output (出力)] セクションに表示される出力を示しています。
[Mule Palette (Mule パレット)] ビューで workday
を検索し、[Financial management] 操作を選択します。
Financial management 操作をキャンバスの Transform Message コンポーネントの右にドラッグします。
Financial management 設定で、[Connector configuration (コネクタ設定)] 項目の横にある [+] をクリックしてグローバル要素を追加します。
次のようにグローバル要素を設定します。
Configuration Name (設定名): My_Workday_Connection
Connection (接続): Basic authentication api
Password (パスワード): ${workday.password}
Host Name (ホスト名): デフォルトのままimpl-cc.workday.com
Tenant Name (テナント名): ${workday.tenantName}
Username (ユーザー名): ${workday.userName}
[Test Connection (テスト接続)] をクリックして、でユーザー名、パスワード、テナント名が正しいことを確認します。
[OK] をクリックします。
プロパティウィンドウの [Operation (操作)] 項目で Put_Fund
を選択します。
[Mule Palette (Mule パレット)] ビューで、logger
を検索して [Logger (Core) (Logger (コア))] を選択します。
Logger コンポーネントを、キャンバスの [Financial management] コンポーネントの右にドラッグします。
次の項目を設定します。
項目 | 値 |
---|---|
Display Name (表示名) |
「 |
Message (メッセージ) |
「 |
Level (レベル) |
デフォルト ( |
プロジェクトを保存します。
ポート 8081 で /
に要求を送信してアプリケーションをテストします。
次のような XML 応答を受信します。
<wd:Put_Fund_Response xmlns:wd="urn:com.workday/bsvc" wd:version="v36.0">
<wd:Fund_Reference wd:Descriptor="I.M.F">
<wd:ID wd:type="WID">THE_WID_ID_NUMBER</wd:ID>
<wd:ID wd:type="Fund_ID">FUND-6-399</wd:ID>
</wd:Fund_Reference>
</wd:Put_Fund_Response>
この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns:workday="http://www.mulesoft.org/schema/mule/workday"
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/workday
http://www.mulesoft.org/schema/mule/workday/current/mule-workday.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/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
<http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config" >
<http:listener-connection host="0.0.0.0" port="8081" />
</http:listener-config>
<workday:config name="My_Workday_Connection" doc:name="Workday Config" >
<workday:basic-authentication-api-connection password="${workday.password}" tenantName="${workday.tenantName}" userName="${workday.userName}" />
</workday:config>
<configuration-properties doc:name="Configuration properties" doc:id="72d0bd1d-5f2f-4a1b-8beb-d9a6eb596273" file="mule-artifact.properties" />
<flow name="workday-13-test-exampleFlow" >
<http:listener doc:name="Listener" config-ref="HTTP_Listener_config" path="/"/>
<ee:transform doc:name="Transform Message" >
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
output application/xml
ns ns0 urn:com.workday/bsvc
---
{
ns0#Put_Fund_Request @(ns0#Add_Only: true, ns0#version: "v36.0"): {
ns0#Fund_Data: {
ns0#Fund_Name: "I.M.F",
ns0#Fund_Type_Reference: {
ns0#ID @(ns0#'type': 'Fund_Type_ID'): "FUND_TYPE-6-3"
}
}
}
}]]></ee:set-payload>
</ee:message>
</ee:transform>
<workday:financial-management doc:name="Financial management" doc:id="8b0142df-896d-4074-9b4c-c0934648cd78" config-ref="My_Workday_Connection" operation="Put_Fund"/>
<logger level="INFO" doc:name="Log Response" message="#[payload]"/>
</flow>
</mule>
Workday 位置要求を作成する手順は次のとおりです。
Studio で Mule アプリケーションを作成します。
HTTP リスナーをフローのソースとして追加して設定します。
[Path (パス)] 項目を /create_position
に設定し、HTTP リスナーの接続にデフォルトの設定を使用します。
[Transform] コンポーネントをフローに追加します。
この変換スクリプトを DataWeave に提供します。
%dw 2.0
ns ns0 urn:com.workday/bsvc
output application/xml
---
{
ns0#Create_Position_Request: {
ns0#Business_Process_Parameters: {
ns0#Auto_Complete: true,
ns0#Run_Now: true
},
ns0#Create_Position_Data: {
ns0#Supervisory_Organization_Reference: {
ns0#ID @("ns0:type": "Organization_Reference_ID"): "SUPERVISORY_ORGANIZATION-6-226"
},
ns0#Position_Data: {
ns0#Job_Posting_Title: "General Manager"
},
ns0#Position_Group_Restrictions_Data: {
ns0#Availability_Date: "2019-07-06",
ns0#Earliest_Hire_Date: "2019-07-08"
},
ns0#Edit_Assign_Organization_Sub_Process: {
ns0#Business_Sub_Process_Parameters: {
ns0#Skip: true
}
},
ns0#Request_Default_Compensation_Sub_Process: {
ns0#Business_Sub_Process_Parameters: {
ns0#Skip: true
}
},
ns0#Assign_Pay_Group_Sub_Process: {
ns0#Business_Sub_Process_Parameters: {
ns0#Skip: true
}
},
ns0#Assign_Costing_Allocation_Sub_Process: {
ns0#Business_Sub_Process_Parameters: {
ns0#Skip: true
}
}
}
}
}
[Mule Palette (Mule パレット)] ビューから、コネクタを選択して [Recruiting] 操作を [Transform] の横にドラッグします。
プロパティウィンドウで以下を行います。
[Operation (操作)] 項目で Create_Position
を選択します。
[Operation (操作)] 項目の値がメニュー項目として表示されていることを確認します。値は、コネクタがメタデータを読み込むと使用可能になります。値を手動で入力しないでください。
[Content (コンテンツ)] 項目をデフォルトの payload
のままにします。
次の例のように、Workday サーバーへの接続のための Workday 設定をセットアップし、テストして、保存します。
Name (名前): My Workday Config
Connection (接続): Basic Authentication Api
Username (ユーザー名): my_user_name
Password (パスワード): my_password
Tenant Name (テナント名): my_tenant_name
Host Name (ホスト名): impl-cc.workday.com
接続に失敗した場合テストは、無効な接続パラメーターを確認して修正し、接続をもう一度テストしてください。
Logger コンポーネントをフローに追加して payload
をメッセージとして設定します。
アプリケーションをデプロイして実行します。
アプリケーションをテストするため、ブラウザーまたは cURL などのアプリケーションから http://<Deployment_url>:8081/create_position
に PUT 要求を実行します。
リクエストボディに次の入力を使用します。
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Create_Position_Request xmlns:ns0="urn:com.workday/bsvc">
<ns0:Business_Process_Parameters>
<ns0:Auto_Complete>true</ns0:Auto_Complete>
<ns0:Run_Now>true</ns0:Run_Now>
</ns0:Business_Process_Parameters>
<ns0:Create_Position_Data>
<ns0:Supervisory_Organization_Reference>
<ns0:ID ns0:type="Organization_Reference_ID">SUPERVISORY_ORGANIZATION-6-226</ns0:ID>
</ns0:Supervisory_Organization_Reference>
<ns0:Position_Data>
<ns0:Job_Posting_Title>General Manager</ns0:Job_Posting_Title>
</ns0:Position_Data>
<ns0:Position_Group_Restrictions_Data>
<ns0:Availability_Date>2019-07-06</ns0:Availability_Date>
<ns0:Earliest_Hire_Date>2019-07-08</ns0:Earliest_Hire_Date>
</ns0:Position_Group_Restrictions_Data>
<ns0:Edit_Assign_Organization_Sub_Process>
<ns0:Business_Sub_Process_Parameters>
<ns0:Skip>true</ns0:Skip>
</ns0:Business_Sub_Process_Parameters>
</ns0:Edit_Assign_Organization_Sub_Process>
<ns0:Request_Default_Compensation_Sub_Process>
<ns0:Business_Sub_Process_Parameters>
<ns0:Skip>true</ns0:Skip>
</ns0:Business_Sub_Process_Parameters>
</ns0:Request_Default_Compensation_Sub_Process>
<ns0:Assign_Pay_Group_Sub_Process>
<ns0:Business_Sub_Process_Parameters>
<ns0:Skip>true</ns0:Skip>
</ns0:Business_Sub_Process_Parameters>
</ns0:Assign_Pay_Group_Sub_Process>
<ns0:Assign_Costing_Allocation_Sub_Process>
<ns0:Business_Sub_Process_Parameters>
<ns0:Skip>true</ns0:Skip>
</ns0:Business_Sub_Process_Parameters>
</ns0:Assign_Costing_Allocation_Sub_Process>
</ns0:Create_Position_Data>
</ns0:Create_Position_Request>
</mule>
Workday は次のように応答します。
<wd:Create_Position_Response xmlns:wd="urn:com.workday/bsvc" wd:version="v36.0">
<wd:Event_Reference>
<wd:ID wd:type="WID">WID_VALUE</wd:ID>
</wd:Event_Reference>
<wd:Position_Reference>
<wd:ID wd:type="WID">WID_VALUE</wd:ID>
<wd:ID wd:type="Position_ID">P-11158</wd:ID>
</wd:Position_Reference>
</wd:Create_Position_Response>
ロガーは次のメッセージを表示します。
{Create_Position_Response={Event_Reference={ID=WID_VALUE}, Position_Reference={ID=P-11158}}}