我遇到了一些令人不安的事情。我正在設置一個POP帳戶接收器,而且看起來它在某些情況下正在工作。當我使用端口110連接到我的服務器時,它工作正常(嘗試連接SSL時出現錯誤消息,這是正常的)。 但是,當我嘗試使用SSL的端口995時,它看起來像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
非常感謝您的幫助!
摩根
有關「某些」情況的更多信息?你可以發表一些表現奇怪的代碼嗎? – 2010-07-08 13:14:54
嗨。我已經更新了更多細節的討論。非常感謝你! – blaguman 2010-07-08 13:24:17
什麼類型是「輸入」對象? – 2010-07-08 13:46:36