POP3 JavaMail パッケージを使用して電子メール メッセージを取得しようとしています。JavaMail のドキュメントによると、IMAPFolder と POP3Folder の両方に getUID() メソッドがあります。ただし、コードは IMAP では正常に機能しますが、POP3 では機能しません。POP3 を使用すると、次のエラーが表示されます: undefined method ``getUID' for #<Java::ComSunMailPop3::POP3Message:0x66d7cba7>
. 以下はコードです:
server_messages = mbox.selectedfolder.getMessages()
msgs_to_be_fetched = Array.new
fetchprofile = javax.mail.FetchProfile.new()
fetchprofile.add(javax.mail.UIDFolder::FetchProfileItem::UID)
fetchprofile.add(javax.mail.FetchProfile::Item::FLAGS)
mbox.selectedfolder.fetch(server_messages, fetchprofile)
server_messages.each { |server_msg|
next if server_msg.getFlags().contains(javax.mail.Flags::Flag::DELETED)
uid = server_msg.getUID()
msgs_to_be_fetched << server_msg unless msg_exists(uid)
} unless server_messages.nil?
質問する
181 次