0

カスタム javamail をデバッグしようとしていIMAPCommandます。

IMAP サーバーに送信するコマンドを作成する過程で、次のようなことを行います。

public Object doCommand(IMAPProtocol p) throws ProtocolException {
Argument args = new Argument();

Argument sortCrit = new Argument();
sortCrit.writeString("REVERSE");
sortCrit.writeString("DATE");
args.writeArgument(sortCrit);

args.writeString("UTF-8");

Argument from1 = new Argument();
from1.writeString("FROM");
from1.writeString(searchFrom.get(0));

Argument from2 = new Argument();
from2.writeString("FROM");
from2.writeString(searchFrom.get(1));

fromArg.writeString("OR");
fromArg.writeArgument(from1);
fromArg.writeArgument(from2);

args.writeArgument(fromArg);

Response[] r = p.command("UID SORT", args);
Response response = r[r.length - 1];
[...]
}

でサーバーに送信されるものを(たとえば、stderrに)ログに記録したいp.command。それ、どうやったら出来るの?

4

2 に答える 2

0

一見すると、Protocol実装にはいくつかのデバッグ機能があるように見えます。with ストリームを作成Protocoltrueし、debug引数に渡します。

次に、このコマンドの入力と出力が にダンプされSystem.outます。

于 2012-08-16T09:16:14.403 に答える
0

session.setDebug(true) を呼び出すと、System.out でプロトコル トレース全体が取得されます。これにより、実際に送信した内容が表示されます。

于 2012-08-16T17:22:06.730 に答える