2017-08-22 1 views
0

Je reçois l'exception suivante dans une application Spring Boot 1.4.3. Il utilise Spring Integration 4.3.6.ImapIdleChannelAdapter: une erreur s'est produite dans la tâche inactive

Le serveur imap est MS-Exchange.

Une idée d'où ça vient?

Aug 22 14:46:42 2017-08-22 14:46:42.631 WARN 537 --- [ask-scheduler-1] o.s.i.mail.ImapIdleChannelAdapter  : error occurred in idle task 
Aug 22 14:46:42 javax.mail.FolderClosedException: * BYE JavaMail Exception: java.io.IOException: Connection dropped by server? 
Aug 22 14:46:42 at com.sun.mail.imap.IMAPFolder.handleIdle(IMAPFolder.java:3199) 
Aug 22 14:46:42 at com.sun.mail.imap.IMAPFolder.idle(IMAPFolder.java:3043) 
Aug 22 14:46:42 at com.sun.mail.imap.IMAPFolder.idle(IMAPFolder.java:2995) 
Aug 22 14:46:42 at org.springframework.integration.mail.ImapMailReceiver.waitForNewMessages(ImapMailReceiver.java:175) 
Aug 22 14:46:42 at org.springframework.integration.mail.ImapIdleChannelAdapter$IdleTask.run(ImapIdleChannelAdapter.java:271) 
Aug 22 14:46:42 at org.springframework.integration.mail.ImapIdleChannelAdapter$ReceivingTask.run(ImapIdleChannelAdapter.java:241) 
Aug 22 14:46:42 at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) 
Aug 22 14:46:42 at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) 
Aug 22 14:46:42 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
Aug 22 14:46:42 at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
Aug 22 14:46:42 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) 
Aug 22 14:46:42 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) 
Aug 22 14:46:42 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
Aug 22 14:46:42 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
Aug 22 14:46:42 at java.lang.Thread.run(Thread.java:745) 

Aug 22 14:46:42 2017-08-22 14:46:42.632 WARN 537 --- [ask-scheduler-1] o.s.i.mail.ImapIdleChannelAdapter  : Failed to execute IDLE task. Will attempt to resubmit in 10000 milliseconds. 
Aug 22 14:46:42 java.lang.IllegalStateException: Failure in 'idle' task. Will resubmit. 
Aug 22 14:46:42 at org.springframework.integration.mail.ImapIdleChannelAdapter$IdleTask.run(ImapIdleChannelAdapter.java:290) 
Aug 22 14:46:42 at org.springframework.integration.mail.ImapIdleChannelAdapter$ReceivingTask.run(ImapIdleChannelAdapter.java:241) 
Aug 22 14:46:42 at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) 
Aug 22 14:46:42 at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) 
Aug 22 14:46:42 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
Aug 22 14:46:42 at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
Aug 22 14:46:42 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) 
Aug 22 14:46:42 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) 
Aug 22 14:46:42 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
Aug 22 14:46:42 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
Aug 22 14:46:42 at java.lang.Thread.run(Thread.java:745) 
Aug 22 14:46:42 Caused by: javax.mail.FolderClosedException: * BYE JavaMail Exception: java.io.IOException: Connection dropped by server? 
Aug 22 14:46:42 at com.sun.mail.imap.IMAPFolder.handleIdle(IMAPFolder.java:3199) 
Aug 22 14:46:42 at com.sun.mail.imap.IMAPFolder.idle(IMAPFolder.java:3043) 
Aug 22 14:46:42 at com.sun.mail.imap.IMAPFolder.idle(IMAPFolder.java:2995) 
Aug 22 14:46:42 at org.springframework.integration.mail.ImapMailReceiver.waitForNewMessages(ImapMailReceiver.java:175) 
Aug 22 14:46:42 at org.springframework.integration.mail.ImapIdleChannelAdapter$IdleTask.run(ImapIdleChannelAdapter.java:271) 
Aug 22 14:46:42 ... 10 common frames omitted 

Spring Integration est configuré comme ceci:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
     http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration.xsd 
     http://www.springframework.org/schema/integration/mail http://www.springframework.org/schema/integration/mail/spring-integration-mail.xsd 
     http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd" 
    xmlns:int="http://www.springframework.org/schema/integration" 
    xmlns:int-mail="http://www.springframework.org/schema/integration/mail" 
    xmlns:util="http://www.springframework.org/schema/util"> 

    <util:properties id="javaMailProperties"> 
     <prop key="mail.imap.socketFactory.class">javax.net.ssl.SSLSocketFactory</prop> 
     <prop key="mail.imap.socketFactory.fallback">false</prop> 
     <prop key="mail.store.protocol">imaps</prop> 
     <prop key="mail.debug">false</prop> 
    </util:properties> 

    <int:channel id="receiveChannel" datatype="javax.mail.Message" /> 

    <int-mail:imap-idle-channel-adapter 
     id="customAdapter" 
     store-uri="imaps://user:[email protected]/INBOX" 
     channel="receiveChannel" 
     auto-startup="true" 
     should-delete-messages="true" 
     should-mark-messages-as-read="true" 
     java-mail-properties="javaMailProperties" /> 

</beans> 
+0

Set 'mail.debug' à' true' dans votre 'javaMailProperties' pour regarder le protocole entre le client et le serveur . –

+0

Il pourrait être simplement la connexion s'est fermée et récupère. C'est le comportement normal du logiciel réseau. – Max

Répondre