簡體   English   中英

在Mule中使用XML來映射變換

[英]Using XML to maps-transformer in Mule

我正在嘗試使用jdbc-ee:xml-to-maps-transformer`

在下面的流程中,最終記錄器的輸出為空。 我本來可以在插入中使用Map對象。

有一些可用的文檔

http://www.mulesoft.org/documentation/display/34X/JDBC+Transport+Reference#JDBCTransportReference-BasicInsertUpdateDelete

但這無濟於事。 網絡上的任何其他信息都很少。

 <flow name="inserttinoDBFlow3" doc:name="inserttinoDBFlow3">
    <file:inbound-endpoint responseTimeout="10000" doc:name="File" moveToDirectory="src/test/resources/out" path="src/test/resources/in"/>
    <file:file-to-string-transformer doc:name="File to String"/>
    <logger message="#[message.payload] :::::::::::::::::::::::::::::::::::: after object to string:::::::::::::::::::::::::::::::::::" level="INFO" doc:name="Logger"/>
    <mulexml:object-to-xml-transformer doc:name="Object to XML"/>
    <logger message="#[message.payload] :::::::::::::::::::::::::::::::::::: after object to xml :::::::::::::::::::::::::::::::::::" level="INFO" doc:name="Logger"/>
    <jdbc-ee:xml-to-maps-transformer doc:name="XML to Maps"/>
    <logger level="INFO" doc:name="Logger" message="#[message.payload]"/>
</flow>

使用對象到XML轉換器使用XStream將Java對象轉換為XML數據。

因此,您的流程中在消息有效負載中具有String類型的Java對象,並且transformer將此字符串打包在<string>節點中並編碼XML特定字符。 在這種情況下,這不是我們想要的XML。

我從您的流程中刪除了對象到XML轉換器,它可以正常工作。

 <flow name="inserttinoDBFlow3" doc:name="inserttinoDBFlow3">
    <file:inbound-endpoint responseTimeout="10000" doc:name="File" moveToDirectory="src/test/resources/out" path="src/test/resources/in"/>
    <file:file-to-string-transformer doc:name="File to String" encoding="UTF-8"/>
    <logger message=" :::::::::::::::::::::::::::::::::::: after object to string::::::::::::::::::::::::::::::::::: #[message.payload]" level="INFO" doc:name="Logger"/>
    <jdbc-ee:xml-to-maps-transformer doc:name="XML to Maps"/>
    <logger level="INFO" doc:name="Logger" message="#[message.payload]"/>
</flow>

輸入文件

<?xml version="1.0" encoding="utf-8"?>
<table>
  <record>
    <field name="id" type="java.math.BigDecimal">0</field>
    <field name="name" type="java.lang.String">hello</field>
  </record>
</table>

請記住:

  • xml-to-maps轉換器僅適用於Mule Entreprise Edition;
  • 由xml-to-maps轉換器轉換的XML必須符合特定的架構

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM