0

我正在尝试拆分 xml 并将其存储为不同的文件。如果我没有在 File name/pattern option 中指定任何内容,文件将以 .dat 格式正确存储。但我希望将文件存储为 some.xml 格式,如 a1.xml 、a2.xml 、a3.xml 。

这是我正在尝试的流程

            <?xml version="1.0" encoding="UTF-8"?>
            <mule
            xmlns:json="http://www.mulesoft.org/schema/mule/json"
            xmlns:tracking="http://www.mulesoft.org/schema/mule/ee/tracking"
            xmlns:file="http://www.mulesoft.org/schema/mule/file"
            xmlns:http="http://www.mulesoft.org/schema/mule/http"
            xmlns:mulexml="http://www.mulesoft.org/schema/mule/xml"
            xmlns="http://www.mulesoft.org/schema/mule/core"
            xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
            xmlns:spring="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
            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/file http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd
            http://www.mulesoft.org/schema/mule/xml http://www.mulesoft.org/schema/mule/xml/current/mule-xml.xsd
            http://www.mulesoft.org/schema/mule/ee/tracking http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd
            http://www.mulesoft.org/schema/mule/json http://www.mulesoft.org/schema/mule/json/current/mule-json.xsd">
            <http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration"/>
            <flow name="splitterprojectFlow">
            <http:listener config-ref="HTTP_Listener_Configuration" path="/splitter" allowedMethods="POST" doc:name="HTTP"/>
            <splitter expression="#[xpath('//Employee')]" doc:name="Splitter"></splitter>
            <mulexml:dom-to-xml-transformer doc:name="DOM to XML"/>
                    <file:outbound-endpoint path="src/test/resources" outputPattern=".xml" responseTimeout="10000" doc:name="File"/>
            </flow>
            </mule>
4

1 回答 1

0

您的 outputPattern 属性只是“.xml”。如果你在 src/test/resources 中查看,你会发现一个名为 .xml 的文件,其中包含最后的拆分内容。

您需要证明 outputPattern 属性的表达式,例如:

<mulexml:dom-to-xml-transformer doc:name="DOM to XML"/>
   <file:outbound-endpoint path="src/test/resources" outputPattern="#[xpath3(&quot;//name&quot;,payload)].xml" responseTimeout="10000" doc:name="File"/>
</flow>
于 2018-06-14T12:49:32.410 回答