Я столкнулся с чем-то тревожным. Я настраиваю приемник учетной записи POP, и похоже, что он работает в некоторых случаях. Когда я подключаюсь к своему серверу с портом 110, он работает нормально (просто появляется сообщение об ошибке при попытке подключиться к SSL, что нормально). Но когда я пытаюсь порт 995, который должен работать с SSL, похоже, что javax.mail (1.4.3) блокируется при выполнении команды input.readLine() (помечено как устаревшая, BTW) вместо того, чтобы бросать IOException предполагается бросить ...javax.mail блокировка при попытке подключения
Я собираюсь добавить тайм-аут, чтобы предотвратить это, но хотел бы получить ваше мнение об этом. Кто-то уже испытал это? Любая идея о том, как ее преодолеть?
Это, как я создаю свой объект магазин:
Properties pop3Props = new Properties();
pop3Props.setProperty("mail.pop3.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
pop3Props.setProperty("mail.pop3.socketFactory.fallback", "false");
pop3Props.setProperty("mail.pop3.port", Integer.toString(hostPort));
pop3Props.setProperty("mail.pop3.socketFactory.port", Integer.toString(hostPort));
pop3Props.setProperty("mail.pop3.starttls.enable", String.valueOf(STARTTLS));
pop3Props.setProperty("mail.pop3.auth", String.valueOf(AUTH));
// Create session and URL
Session session = Session.getInstance(pop3Props, null);
session.setDebug(true);
URLName url = new URLName(POP3, host, hostPort, "", username, password);
// Create the store
if (useSSL) {
return new POP3SSLStore(session, url);
} else {
return new POP3Store(session, url);
}
Это, как я пытаюсь подключиться на этом объекте:
store.connect(host, hostPort, username, password);
И это javax.mail линия который заставляет замораживать (исходный комментарий включен):
String line = input.readLine(); // XXX - readLine is deprecated
Большое спасибо за помощь!
Morgan
Дополнительная информация о «определенных» случаях? И можете ли вы опубликовать фрагмент кода, который ведет себя странно? –
Привет. Я обновил обсуждение более подробно. Большое спасибо! – blaguman
Какой тип «входной» объект? –