Search code examples
javaspringemailimappop3

How can receive emails in Java based system preferably with spring?


I have looked up Google and Spring documentation but can not find any thing on receiving emails.

I need to build a client (kind of not fully blown client) that can receive emails from POP3 and IMAP. I am already using Spring in the project so preference is Spring.

Lots of links point to James but while it does look like a good project does not provide enough documentation and I am not even sure it does what I am after i.e just a small client that is able to to receive emails.


Solution

  • Spring integration was designed to solve these kind of problems. In particular it has e-mail receiving adapters. Here is an IMAP example from the documentation:

    <mail:inbound-channel-adapter id="imapAdapter"
          store-uri="imaps://[username]:[password]@imap.gmail.com/INBOX"
          java-mail-properties="javaMailProperties"
          channel="recieveChannel"
          should-delete-messages="true"
          should-mark-messages-as-read="true"
          auto-startup="true">
          <int:poller max-messages-per-poll="1" fixed-rate="5000"/>
    </mail:inbound-channel-adapter>