Spring Integration Java DSL:在错误通道中数据库记录器无法正常工作

时间:2019-02-15 10:49:58

标签: spring-integration spring-integration-dsl

我有自己的数据库记录器myDatabaseLogger,在errorChannel通道中什么也没做。 System.out.println命令正在errorChannel通道中工作。

我的数据库记录器myDatabaseLogger在其他流程中工作。

如何使我的数据库记录器myDatabaseLoggererrorChannel频道中工作?

这是我的代码:

    @Autowired
@Qualifier("errorChannel")
private PublishSubscribeChannel errorChannel;

@Bean
public IntegrationFlow errorHandlingFlow() {
    return IntegrationFlows
            .from(errorChannel)
            .handle(myDatabaseLogger, "log")
            .handle(message -> System.out
                    .println("The error happened:" + ((MessagingException) message.getPayload()).getMessage()))
            .get();
}

编辑:

很抱歉延迟,刚好是假期。

myDatabaseLogger类是简单的Java类,它使用扩展了org.springframework.data.repository.CrudRepository的存储库写入数据库。在方法errorHandlingFlow中,没有行写入数据库。

稍后我将使用DEBUG日志记录并尝试进行更多研究。

1 个答案:

答案 0 :(得分:0)

在这里可以使用DEBUG记录器来查找问题的原因。