Flex Gateway新着情報
Governance新着情報
Monitoring API Manager
このバージョンの Mule は、拡張サポートが終了する 2023 年 5 月 2 日にその すべてのサポートが終了しました。 このバージョンの Mule を使用する CloudHub には新しいアプリケーションをデプロイできなくなります。許可されるのはアプリケーションへのインプレース更新のみになります。 標準サポートが適用されている最新バージョンの Mule 4 にアップグレードすることをお勧めします。これにより、最新の修正とセキュリティ機能強化を備えたアプリケーションが実行されます。 |
Studio UI を使用して Mule プロジェクトに DataWeave 言語を取り込むだけではなく、Studio の [XML] タブまたは外部エディターで、Transform Message コンポーネントをすべて XML で作成して設定することができます。
UI を使用して要素を作成および設定すると、対応する XML 設定が XML エディターで自動的に作成されます。
Mule プロジェクトの最初に、次の連動関係を取り込む必要があります。
<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
...
xsi:schemaLocation="
...
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
</mule>
Transform コンポーネントをキャンバスにドラッグアンドドロップすると、Studio はこれらの連動関係を自動的に追加します。
<ee:transform>
要素は、Transform コンポーネントのトップレベル XML タグです。
<ee:transform> 属性 |
説明 |
---|---|
|
Studio キャンバスに表示される要素の名前を定義します。 |
|
遅延実行を参照します。. 指定できる値: |
変換要素内で CDATA
を使用して DataWeave コードを入力するか、または外部の .dwl
ファイルを参照できます。
この例では、<dw:set-payload>
変換要素内で DataWeave スクリプトを作成しています。
<ee:transform doc:id="747f74d4-cb66-4f8e-8222-24784e6863ae"
doc:name="Transform" doc:timestamp="1510861248434">
<ee:message>
<ee:set-payload>
<![CDATA[%dw 2.0
output application/json
---
{
// YOUR DW SCRIPT
}
]]>
</ee:set-payload>
</ee:message>
</ee:transform>
次の例では、外部の .dwl
ファイルを呼び出して同じ設定を行っています。
<ee:transform doc:id="747f74d4-cb66-4f8e-8222-24784e6863ae"
doc:name="Transform" doc:timestamp="1510861248434" doc:mode="immediate">
<ee:message>
<ee:set-payload resource="transform.dwl" />
</ee:message>
</ee:transform>
これらのファイルは、デフォルトではプロジェクトの src/main/resources
フォルダーにあります。
単一の Transform コンポーネント要素 (<ee:transform/>
) で、Mule イベントのすべての部分の内容を指定できます。
<ee:message/>
には、<ee:set-payload/>
と <ee:set-attributes/>
を定義できます。
<ee:variables/>
には、1 つまたは複数の <ee:set-variable/>
要素を定義できます。
<ee:transform doc:id="747f74d4-cb66-4f8e-8222-24784e6863ae"
doc:name="Transform" doc:timestamp="1510861248434">
<ee:message>
<ee:set-payload resource="transform.dwl" />
<ee:set-attributes resource="myattributes.dwl" />
</ee:message>
<ee:variables>
<ee:set-variable variableName="myVar" resource="myvar.dwl"/>
</ee:variables>
</ee:transform>
子要素には、同じ属性の一部を定義できます。
属性 | 説明 |
---|---|
|
DataWeave 変換スクリプトが格納された |
|
出力変数専用で、変数の名前を定義します。 |
ペイロード、属性、および変数の変換を作成する例です。
<ee:transform doc:id="747f74d4-cb66-4f8e-8222-24784e6863ae"
doc:name="Transform" doc:timestamp="1510861248434">
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
output application/json
---
(payload map (value0, index0) -> {
id: value0.id,
username: value0.username,
address: {
street: value0.address.street
},
website: value0.website
})]]></ee:set-payload>
<ee:set-attributes><![CDATA[%dw 2.0
output application/json
---
{
reasonPhrase: attributes.reasonPhrase
}]]></ee:set-attributes>
</ee:message>
<ee:variables>
<ee:set-variable variableName="myVar"><![CDATA[%dw 2.0
output application/json
---
{
a: payload[0].phone
}]]></ee:set-variable>
</ee:variables>
</ee:transform>