gpt4 book ai didi

java - Spring Integration,如何更好地描述验证组件

转载 作者:行者123 更新时间:2023-11-30 06:37:38 26 4
gpt4 key购买 nike

我的流程定义如下

return IntegrationFlows.from(
(MessageSourceSpec<?, ? extends MessageSource<?>>) Files.inboundAdapter(directory)
.autoCreateDirectory(false)
.patternFilter("*.xml"),
e -> e.poller(Pollers.fixedDelay(1000)) ))
.transform(new TransformXmlToMyDocument())
.transform(new DataValidator()) // VALIDATOR
.transform(new TransformMyDocumentToRabbitDomain())
.channel(pubSubRabbitOutput)
.get();

问题是关于 validator 的。目前,我将 validator 制作为“透明”转换器,如果消息内的数据无效,则会抛出异常。整个流程将被包装在伪事务中以处理错误,如“how to move processed file to another directory using Spring integration ftp inbound adapter”中所建议的。

但是在流程中包含逻辑 validator 的最佳方式是什么?应该是变压器还是其他类型的流量元件?

最佳答案

Filter EIP 。当然,Spring Integration 提供了 one关于此事。

您的DataValidator必须针对条件返回true/false,并且您的丢弃逻辑有throw-exception-on-rejection选项:

 .filter(new DataValidator(), "validate", e -> e.throwExceptionOnRejection(true))

关于java - Spring Integration,如何更好地描述验证组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44951802/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com