我正在使用 Spring Cloud Dataflow 服务器,并且正在使用时间源和 http 客户端处理器轮询 csv 文件。现在我想拆分轮询的 csv 文件和管道单行消息。由于 HttpClientProcessor 仅轮询整个文件,因此我使用 FileSplitter 处理器来归档它。但我坚持这一点。相关的 FileSplitter 选项是delimiters
和expression
。
选项delimiters
提示说
当表达式为空时,标记 {@link String} 有效负载时使用的分隔符。
选项expression
提示说
用于拆分有效负载的 SpEL 表达式。
我已经尝试了很多可能性,而不仅仅是\n
两个选项都没有成功。该expression
选项字面上总是会触发以下错误:
Failed to bind properties under 'splitter.expression' to org.springframework.expression.Expression:
Property: splitter.expression
Value: \n
Origin: System Environment Property "SPRING_APPLICATION_JSON"
Reason: failed to convert java.lang.String to org.springframework.expression.Expression
该delimiters
选项的方法导致应用程序成功启动,但我的日志接收器没有得到任何输入。我的分隔符选项与csv 中被识别为真正的“换行符”字符不同。
有没有人知道我必须输入哪些选项delimiters
或expression
为了逐行拆分 csv 消息?实现我自己的 FileSplitter 处理器应用程序似乎有点矫枉过正,但如果需要,我会这样做......