简体   繁体   English

ule子流仅处理csv文件中的1条记录

[英]Mule flow only processing 1 record from csv file

I have a mule flow which goes FILE -> CHOICE -> DATAMAPPER -> LOGGER 我有一个ule子流,它是文件->选择->数据映射器->记录器

The FILE endpoint processes a csv file with 40 records FILE端点处理具有40条记录的csv文件

The DATAMAPPER converts the csv into JSON and shows all 40 records in JSON format when run in preview 在预览中运行时,DATAMAPPER将csv转换为JSON,并以JSON格式显示所有40条记录

The LOGGER shows that the payload as a byte and not JSON and when I convert JSON to object it shows the payload in JSON format but there is only 1 record. LOGGER显示有效负载为字节而不是JSON,当我将JSON转换为对象时,它以JSON格式显示有效负载,但只有1条记录。

My queries: 1. How do you setup the workflow to process all of the 40 records and convert all to JSON and output all from the flow? 我的查询:1.如何设置工作流程以处理所有40条记录,并将所有记录转换为JSON并从流中输出所有记录?

  1. Is it correct that the output is a byte because the datamapper output is JSON so I was expecting to see all records in JSON format in the payload when looking at it in debug mode? 因为datamapper输出是JSON,所以输出是一个字节是否正确,所以我期望在调试模式下查看时,有效负载中会看到JSON格式的所有记录?

You can do something like this. 你可以做这样的事情。

<flow name="csv-to-jsonFlow">
        <file:inbound-endpoint path="/src/main/resources/csv" connector-ref="File" responseTimeout="10000" doc:name="File">
            <file:filename-regex-filter pattern=".*csv" caseSensitive="true"/>
        </file:inbound-endpoint>
        <dw:transform-message doc:name="Transform Message">
            <dw:set-payload><![CDATA[%dw 1.0
%output application/json
---
payload]]></dw:set-payload>
        </dw:transform-message>
        <object-to-string-transformer doc:name="Object to String"/>
        <logger message="#[payload]" level="INFO" doc:name="Logger"/>
    </flow>

Sample CSV file: 样本CSV文件:

name,age,gender
janos,29,male
juan,40,male
pedro,22,male
carla,34,female
jose,30,male
anne,25,female
rey,33,male
joyce,27,female
pia,20,female
ard,27,male
janos,29,male
juan,40,male
pedro,22,male
carla,34,female
jose,30,male
anne,25,female
rey,33,male
joyce,27,female
pia,20,female
ard,27,male
janos,29,male
juan,40,male
pedro,22,male
carla,34,female
jose,30,male
anne,25,female
rey,33,male
joyce,27,female
pia,20,female
ard,27,male
janos,29,male
juan,40,male
pedro,22,male
carla,34,female
jose,30,male
anne,25,female
rey,33,male
joyce,27,female
pia,20,female
ard,27,male

Sample Output: 样本输出:

[
  {
    "name": "janos",
    "age": "29",
    "gender": "male"
  },
  {
    "name": "juan",
    "age": "40",
    "gender": "male"
  },
  {
    "name": "pedro",
    "age": "22",
    "gender": "male"
  },
  {
    "name": "carla",
    "age": "34",
    "gender": "female"
  },
  {
    "name": "jose",
    "age": "30",
    "gender": "male"
  },
  {
    "name": "anne",
    "age": "25",
    "gender": "female"
  },
  {
    "name": "rey",
    "age": "33",
    "gender": "male"
  },
  {
    "name": "joyce",
    "age": "27",
    "gender": "female"
  },
  {
    "name": "pia",
    "age": "20",
    "gender": "female"
  },
  {
    "name": "ard",
    "age": "27",
    "gender": "male"
  },
  {
    "name": "janos",
    "age": "29",
    "gender": "male"
  },
  {
    "name": "juan",
    "age": "40",
    "gender": "male"
  },
  {
    "name": "pedro",
    "age": "22",
    "gender": "male"
  },
  {
    "name": "carla",
    "age": "34",
    "gender": "female"
  },
  {
    "name": "jose",
    "age": "30",
    "gender": "male"
  },
  {
    "name": "anne",
    "age": "25",
    "gender": "female"
  },
  {
    "name": "rey",
    "age": "33",
    "gender": "male"
  },
  {
    "name": "joyce",
    "age": "27",
    "gender": "female"
  },
  {
    "name": "pia",
    "age": "20",
    "gender": "female"
  },
  {
    "name": "ard",
    "age": "27",
    "gender": "male"
  },
  {
    "name": "janos",
    "age": "29",
    "gender": "male"
  },
  {
    "name": "juan",
    "age": "40",
    "gender": "male"
  },
  {
    "name": "pedro",
    "age": "22",
    "gender": "male"
  },
  {
    "name": "carla",
    "age": "34",
    "gender": "female"
  },
  {
    "name": "jose",
    "age": "30",
    "gender": "male"
  },
  {
    "name": "anne",
    "age": "25",
    "gender": "female"
  },
  {
    "name": "rey",
    "age": "33",
    "gender": "male"
  },
  {
    "name": "joyce",
    "age": "27",
    "gender": "female"
  },
  {
    "name": "pia",
    "age": "20",
    "gender": "female"
  },
  {
    "name": "ard",
    "age": "27",
    "gender": "male"
  },
  {
    "name": "janos",
    "age": "29",
    "gender": "male"
  },
  {
    "name": "juan",
    "age": "40",
    "gender": "male"
  },
  {
    "name": "pedro",
    "age": "22",
    "gender": "male"
  },
  {
    "name": "carla",
    "age": "34",
    "gender": "female"
  },
  {
    "name": "jose",
    "age": "30",
    "gender": "male"
  },
  {
    "name": "anne",
    "age": "25",
    "gender": "female"
  },
  {
    "name": "rey",
    "age": "33",
    "gender": "male"
  },
  {
    "name": "joyce",
    "age": "27",
    "gender": "female"
  },
  {
    "name": "pia",
    "age": "20",
    "gender": "female"
  },
  {
    "name": "ard",
    "age": "27",
    "gender": "male"
  }
]

Hope this helps. 希望这可以帮助。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM