Flex Gateway新着情報
Governance新着情報
Monitoring API Manager次の例では、変数値を XML に変換し、以後 Web サービスをコンシュームする Web サービスコンシューマー用 Anypoint Connector (Web Service Consumer Connector) にその値を渡す方法を示しています。
Anypoint Studio でフローを作成する手順は、次のとおりです。
[Mule Palette (Mule パレット)] ビューで、[Core (コア)] > [Scheduler] を選択します。
Scheduler コンポーネントを Studio キャンバスにドラッグします。
Scheduler コンポーネントは時間ベースの条件が成立した時点でフローを開始します。
[Display Name (表示名)] 項目を Scheduler
に設定します。
[Scheduling Strategy (スケジュール戦略)] を Fixed Frequency
に、[Frequency (頻度)] を 1000
に、[Start delay (開始遅延)] を 0
に、[Time unit (時間単位)] を MILLISECONDS (Default)
に設定します。
Studio での Scheduler 設定は次のようになります。
Set Variable コンポーネントをキャンバスの Scheduler コンポーネントの右にドラッグします。
Set Variable コンポーネントは、フローの公判で XML に変換される変数を作成します。
[Display Name (表示名)] 項目を Set Variable
に設定します。
[Name (名前)] を variableSample
に、[Value (値)] を test
に設定します。
Studio での Set Variable 設定は次のようになります。
Transform Message コンポーネントをキャンバスの Set Variable コンポーネントの右にドラッグします。
Transform Message コンポーネントは変数値を XML に変換します。
Transform Message コンポーネント設定の [Output (出力)] 項目で、次の DataWeave 式を設定します。
変数値の出力を application/xml
に変換する。
Web Service Consumer Connector が attachOperation
で呼び出そうとしている Web サービス操作の名前を定義する。
%dw 2.0 output application/xml ns con http://service.soap.service.mule.org/ --- con#attachOperation: { text: vars.variableSample }
xml
Studio での Transform Message 設定は次のようになります。
[Consume] 操作をキャンバスの Transform Message コンポーネントの右にドラッグします。
[Display Name (表示名)] 項目を Consume
に設定します。
[Operation (操作)] を attachOperation
に、[Body (本文)] メッセージを payload
に設定します。
[Advanced (詳細)] タブの [Message Customization (メッセージのカスタマイズ)] セクションで、[Force XML Prolog into body (XML Prolog を本文に強制)] オプションを有効にして XML prolog をエンベロープの本文 XML のコンテンツに追加します。
Studio での Consume 操作設定は次のようになります。
Studio での XML Prolog 設定は次のようになります。
[General (一般)] タブで、[Connector configuration (コネクタ設定)] 項目の横にあるプラス記号 (+) をクリックして、[Global Element Properties (グローバル要素のプロパティ)] 設定にアクセスします。
[General (一般)] タブの [Connection (接続)] セクションで、次のパラメーターを設定します。
WSDL location (WSDL の場所)
リモートまたはローカル WSDL ファイル URL。
Service (サービス)
サービス名。
Port (ポート)
ポート名。
Address (住所)
要求をディスパッチする Web サーバーのアドレス。ただし、[Service (サービス)] パラメーターと [Port (ポート)] パラメーターで Web サーバーアドレスが自動的に入力されない場合、手動で正しい [Address (アドレス)] を指定する必要があります。
[OK] をクリックします。
Studio での [Global Element Properties (グローバル要素のプロパティ)] 設定は次のようになります。
Studio で変更を保存します。
アプリケーションをデプロイします。
この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:wsc="http://www.mulesoft.org/schema/mule/wsc"
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/wsc http://www.mulesoft.org/schema/mule/wsc/current/mule-wsc.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
<wsc:config name="Web_Service_Consumer_Config">
<wsc:connection wsdlLocation="api/attach-demo.wsdl" service="AttachDemo" port="AttachDemoSOAP" address="http://localhost:8085/AttachDemo/AttachDemoSOAP" />
</wsc:config>
<flow name="WSC-Example">
<scheduler>
<scheduling-strategy >
<fixed-frequency />
</scheduling-strategy>
</scheduler>
<set-variable value="test" variableName="variableSample"/>
<ee:transform>
<ee:message >
<ee:set-payload ><![CDATA[ %dw 2.0
output application/xml
ns con http://service.soap.service.mule.org/
---
con#attachOperation: {
text: vars.variableSample
}]]></ee:set-payload>
</ee:message>
</ee:transform>
<wsc:consume config-ref="Web_Service_Consumer_Config" operation="attachOperation">
<wsc:message-customizations forceXMLProlog="true"/>
</wsc:consume>
</flow>
</mule>
xml