diff --git a/spring-integration-mail/src/main/java/org/springframework/integration/mail/ImapMailReceiver.java b/spring-integration-mail/src/main/java/org/springframework/integration/mail/ImapMailReceiver.java index 7136b287f8..52c292aca9 100755 --- a/spring-integration-mail/src/main/java/org/springframework/integration/mail/ImapMailReceiver.java +++ b/spring-integration-mail/src/main/java/org/springframework/integration/mail/ImapMailReceiver.java @@ -118,7 +118,11 @@ public class ImapMailReceiver extends AbstractMailReceiver { protected Message[] searchForNewMessages() throws MessagingException { Flags supportedFlags = this.getFolder().getPermanentFlags(); SearchTerm searchTerm = this.compileSearchTerms(supportedFlags); - return searchTerm != null ? this.getFolder().search(searchTerm) : this.getFolder().getMessages(); + Folder folder = this.getFolder(); + if (folder.isOpen()){ + return searchTerm != null ? folder.search(searchTerm) : folder.getMessages(); + } + throw new MessagingException("Folder is closed"); } private SearchTerm compileSearchTerms(Flags supportedFlags){