Spring集成轮询器线程排除了

时间:2017-11-24 07:05:32

标签: string spring-integration spring-integration-dsl

我使用String Integration DSL邮件从POP3s邮件服务器接收电子邮件。几个小时后,我看到轮询器停止轮询邮件服务器,不处理电子邮件。我可以登录邮件服务器,看到电子邮件是他们在邮件服务器中。您能否请回顾下面的内容,让我知道这里有什么不正确的

 @Bean
    public IntegrationFlow emailFlow() {
    return IntegrationFlows
        .from(Mail.pop3InboundAdapter(config.getMailUri())
                .javaMailProperties(p -> 
    emailInflowConfiguration.javaMailProperties(p))
                .embeddedPartsAsBytes(true).maxFetchSize(1)

    .shouldDeleteMessages(true)
                .javaMailAuthenticator(config.mailAuthenticator()),
            e -> e.autoStartup(true)
                .poller(p -> p.fixedDelay(5000,
                    1000)))
        .channel(MessageChannels.direct("pop3Channel"))
        .handle("pop3Handler", "handleMessage")
        .get();
  }

1 个答案:

答案 0 :(得分:0)

我们需要查看线程转储来确定等待的线程和位置。

当有一个组件等待回复时,通常线程池已经耗尽,但是没有来自下游的组件。您的代码段不太可能。所以,我们肯定需要更多信息。例如,pop3Handler做了什么?