Я пытаюсь читать электронные письма в папке учетной записи электронной почты Office365, используя API JavaMail 1.4.
Мой код:
public static void main(String argv[]) throws Exception {
// Get a Properties object
Properties props = System.getProperties();
// Get a Session object
Session session = Session.getInstance(props, null);
// Get a Store object
Store store = null;
Folder rf = null;
if (CUR_MAIL_PROTOCOL != null)
store = session.getStore("imap");
// Connect
if (CUR_MAIL_HOST != null || CUR_MAIL_LOGIN != null || CUR_MAIL_PWD != null)
store.connect("outlook.office365.com", 993, "**MYEMAIL**", "**MYPASS**");
else
store.connect();
// List namespace
rf = store.getDefaultFolder();
getFolderDetails(rf, true, "");
if ((rf.getType() & Folder.HOLDS_FOLDERS) != 0) {
Folder[] f = rf.list("%");
for (int i = 0; i < f.length; i++)
getFolderDetails(f[i], recursive, " ");
}
store.close();
}
Моя ошибка:
Exception in thread "main" javax.mail.MessagingException: Connection timed out: connect;
nested exception is:
java.net.ConnectException: Connection timed out: connect
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:298)
at javax.mail.Service.connect(Service.java:234)
Спасибо
PS: учетная запись Office365 с использованием JavaMail 1.4 API
imaps
вместоimap
. Сimap
сервер возвращает возможностьLOGINDISABLED
, что означает, что вы не можете выполнить простую команду имени пользователя/пароляLOGIN
. Сimaps
такого быть не должно. - person dkarp   schedule 08.04.2016