问题标签 [spring-integration-dsl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
612 浏览

spring-integration - 如何使用 Spring Integration AMQP 将 msg 以 json 格式放入队列

目前我正在尝试使用 json 格式将消息放入队列。下面是我的代码片段,但它不起作用。

该消息作为application/x-java-serialized-object放入队列中。

0 投票
1 回答
559 浏览

spring - Spring-Integration:如果日志是最后一步,则“调度程序没有订阅者”

我有下面给我的微不足道的 Spring IntegrationFlow org.springframework.integration.MessageDispatchingException: Dispatcher has no subscribers

这似乎与Flow的最后一步有关,这是一个log步骤。如果我删除该log步骤或在该步骤之后放置另一个身份转换,Dispatcher has no subscribers则不会抛出。

我想了解log最后一步有什么问题。

以下两个选项有效,但为什么不是log最后一步?

0 投票
1 回答
496 浏览

spring-integration - 从构建脚本运行所有 Spring Integration DSL 单元测试用例失败

我有一些为 Spring 集成流程编写的单元测试用例。从 IDE 运行单个测试用例没有问题,但是从 gradle build 运行所有测试用例时,一些测试用例失败了。

我在相关问题上找到了 QC: https ://jira.spring.io/browse/XD-3709

如果有人知道此问题的解决方案,请发布。

带有以下注释的单元测试:

从 gradle 脚本运行时出错:

0 投票
1 回答
648 浏览

java - 如何对消费者进行单元测试

我的代码中基于带有 randomUUID 的 Spring IntegrationenrichHeader有以下定义:

我有点受阻,尽管对此代码的单元测试会是什么样子。有什么建议么?

0 投票
1 回答
339 浏览

java - Spring Integration Java DSL:缓冲消息流并将处理程序放在单独的线程中

我在 Spring Integration DSL 中配置了一个流程:

根据日志,一切都在线程 "main" 中按顺序发生。顺便说一句,我同时使用 publishSubscribeChannel,因为我有兔子发布者/处理程序,它以相同的方式监听这个频道。

由于数据库操作需要时间,我应该如何正确处理,所以“主要”不会减慢。最好,主线程必须尽快解除阻塞,并且应该在工作线程中继续处理。我对么?

我可以在 Flow 中引入一个缓冲区,以收集来自 publishSubscribeChannel 的消息突发吗?

此外,我更喜欢其他线程(池)来处理实际发送,以便从执行流程的主线程中移除负载。我很清楚 Spring 中的 ThreadPoolTask​​Executor 都有一个缓冲区和一个线程池。它是一种使用它的好方法,以及如何以 Java DSL 方式使用 ThreadPoolTask​​Executor?

0 投票
1 回答
1190 浏览

java - Spring Integration Java DSL:处理错误/异常的策略?

如何处理 Java DSL 流中的错误处理?

假设我有一个写入 Rabbit(或数据库)的简单流程。

由于数据库问题或中间连接失败,此类操作可能会导致错误。

如果在“publishToRabbit”步骤中发生某些异常,我如何增强对所采取操作的流声明?

0 投票
1 回答
78 浏览

spring-integration - 避免异常到达之前的集成流

我定义了两个使用这个组件的集成流。一个从 ftp 读取,一个从磁盘读取文件。

如果从 ftp 读取或从磁盘读取文件出现问题,我希望这两个 IntegrationFlows 失败。他们定义了自己的错误通道。我不希望在将 csv 行转换为 MyPrettyObject 以达到这两个 IntegrationFlow 时出现错误。

我曾考虑将原始 csv 行分派到消息队列,然后我可以在此消息队列的入站使用者上定义特定的错误通道。

然而,这似乎有点矫枉过正。

我试图为转换器插入一个 ExpressionEvaluatingRequestHandlerAdvice,但我不确定如何正确使用它,并且消息没有到达路由器或 ERROR_CHANNEL_NAME

0 投票
1 回答
258 浏览

java - 按需启动 Spring Integration 路由,而不是在上下文初始化期间

我有一个 Spring Integration 路由(通过 DSL 制作),它从特定文件夹轮询文件(如使用 Java DSL 从文件轮询中所示 - 添加 Files.inboundAdapter 时出现编译错误)并发送给 Rabbit。

当我按照上面链接中的说明配置流程时,它已经在配置阶段开始了。但是,我想稍后在运行时启动它,因为我需要先连接到 Rabbit。

如何将 IntegrationFlow 配置为稍后按需启动/停止?

0 投票
1 回答
692 浏览

java - Spring集成 - 在流之间传递数据

我有一个特殊的 IntegrationFlow 配置如下

以及处理来自某些 XML 文件的传入数据的其他一些流程,例如此处所示Polling from file using Java DSL - 添加 Files.inboundAdapter 时出现编译错误。在该流程结束时,我想将 Message 传递给上述发送兔子的“接收器”。我该如何声明?

0 投票
1 回答
250 浏览

spring-integration - Spring Integration Java DSL - HeaderEnricher 和 HeaderEnricherSpec 类有什么区别

我正在学习用于 spring 集成的 pre-Java8 DSL,并从我的项目中可用的现有集成组件中尝试一些示例。对于标题丰富器,我遇到了两个类,HeaderEnricher 和 HeaderEnricherSpec。

这些类有什么区别,我观察到 HeaderEnricherSpec 扩展了 HeaderEnricher 类。在这种情况下,IntegrationComponentSpec 如何提供帮助。