Groovy Imap Access

1

У меня есть следующий код

import javax.mail.*

def host = "imap.gmail.com"
def port = "993"
def username = "[email protected]"
def password = "password"

Properties props = new Properties()
props.setProperty("mail.store.protocol", "imap")
props.setProperty("mail.imap.host", host)
props.setProperty("mail.imap.port", port)
def session = Session.getDefaultInstance(props, null)
def store = session.getStore("imap")

store.connect(host, username, password)
def folder = store.getFolder("INBOX")
folder.open(Folder.READ_WRITE)
folder.messages.each { msg ->
    println msg.subject
}

но когда я запускаю этот скрипт, он просто зависает после компиляции. Что я делаю не так?

Теги:
groovy
javamail

1 ответ

3
Лучший ответ

В gmail нам необходимо обеспечить соблюдение SSL. для этого я просто добавил

props.setProperty("mail.imap.ssl.enable", "javax.net.ssl.SSLSocketFactory");
props.setProperty("mail.imap.socketFactory.fallback", "false");

и это устранило проблему

Редактировать:

Лучшим решением будет сделать следующее:

props.setProperty("mail.imap.ssl.enable", "true");

Спасибо @Bill Шеннон, чтобы указать на это.

  • 0
    Не делай этого. Установите для свойства "mail.imap.ssl.enable" значение "true".

Ещё вопросы

Сообщество Overcoder
Наверх
Меню