0

チェックボックスをクリックしてから削除ボタンをクリックしてユーザーが選択したメッセージを削除しようとしていますが、コードが望ましい結果を実行していない理由がわかりません。Javamailのコードは次のとおりです。

public static boolean deleteMessage(int j) throws Exception
 { 

 store = session.getStore("pop3");
store.connect("localhost", "red","red");



 inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);


    msgs[j].setFlag(Flags.Flag.DELETED, true); // set the DELETED flag

      if (msgs[j].isSet(Flags.Flag.DELETED))
    {
    inbox.close(true);
    return true; 
    }
    return false;
}

上記のメソッドは、ユーザーが削除するように選択したメッセージの数に基づいて毎回呼び出しています。ユーザーが削除するメッセージを2つ選択した場合、そのメッセージは2回呼び出されます。メソッドクラスを呼び出して、deleteMessageメソッドのパラメータとしてこれらの数値を渡します。しかし、それは何もしておらず、例外もスローしていません。私がしているのは何が悪いのですか?

4

1 に答える 1

2

試す

Message msg = inbox.getMessage(j);
msg.setFlag(Flags.Flag.DELETED, true);
if (msg.isSet(Flags.Flag.DELETED))
{
    inbox.close(true);
    return true;
}
于 2009-11-01T08:56:41.623 に答える