2017-05-01 10 views
0

GoogleはGodaddy電子メールサーバーを使用しています。 IMAPプロトコルを使用してメールを取得しようとしています。以下の私のサンプルIMAPは、私は上記のコマンドと同等のJavaコードを記述する場合、私は空の結果を得ているIMAPコマンドに相当するjavaコード

* SEARCH 501 505 342 229 191 
a OK SEARCH done. 

以下のようなものをコマンド

a select inbox 
a UID SEARCH FROM "[email protected]" 

結果は、上記の罰金になっているコマンドです。以下はJavaコードです。 Javaコード上記のため

IMAPFolder inbox = store.getFolder("INBOX"); 
SearchTerm fromTerm = new FromTerm(new InternetAddress("[email protected]")); 
Message[] messages = inbox.search(fromTerm); 

生成IMAPコマンドは

a SEARCH FROM [email protected] ALL 

ですが、UIDは、Java上で不足している私は、空の結果を得ているように、コマンドを生成しました。 Javaを使用し

おかげ

答えて

0

SEARCHコマンドでUIDタグを使用しながら、UIDを含める方法のUIDが代わりにメッセージシーケンス番号の返されるべきであることを示しています。 JavaMailは主にメッセージシーケンス番号で動作するため、UID SEARCHをサポートしていません。返されたメッセージシーケンス番号を使用して、対応するMessageオブジェクトにマッピングされます。それにもかかわらず、メッセージは、UIDまたはメッセージシーケンス番号が返されるかどうかに関係なく、「見つけられる」必要があります。サーバーがUID SEARCHの結果のみを返す場合、サーバーが壊れているため、このサーバーのバグをGoDaddyに報告する必要があります。

関連する問題