1

プロジェクトでこのコードを使用して、Gmail の受信トレイとユニメールに接続しています。私のシステムでは問題なく動作し、両方の IMAP に接続できます。しかし、他のシステムで同じコードを試すとすぐに、Gmail は接続タイムアウトになります。接続できません。少し検索したところ、システムがポート 443 をリッスンしているのに対し、テストした他のシステムではポート 443 をリッスンしていないことがわかりました。443 ポートを開くために、他のシステムでいくつかの受信ルールを指定しようとしましたがプログラムを実行するとすぐにブロックされます。

この問題はポートが原因ですか? または、ここで何か不足していますか?

public class MailConnection {
    Folder inbox;

public MailConnection() throws MessagingException{
    Properties props = System.getProperties();
    props.setProperty("mail.store.protocol", "imap");
    try{
       Session session = Session.getInstance(props, null);
       Store store = session.getStore("imap");
       store.connect("mailbox.xyz.com", "emailId@xyz.com", "password");
       System.out.println(store);

       inbox = store.getFolder("Inbox");
       System.out.println("No of Unread Messages : " + inbox.getUnreadMessageCount());
    }
    catch (NoSuchProviderException e){
        e.printStackTrace();
        System.exit(1);
    }
}
4

1 に答える 1

0

非 SSL IMAP ポート 143 に接続しています。「443」がどこから来たのかわかりません。

Gmail には SSL IMAP ポートが必要です。例については、この JavaMail FAQ エントリを参照してください。

うまくいかない場合は、これらのデバッグのヒントを参照してください。

于 2013-07-26T06:43:18.540 に答える