我正在尝试调试我的自定义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
发送到服务器的内容。我该怎么做?
答案 0 :(得分:0)
从快速浏览一下,Protocol
实现看起来有一些调试功能。 Create a Protocol
with streams并传递true
debug
参数。
然后您应该看到此命令的输入和输出转储到System.out
。
答案 1 :(得分:0)
调用session.setDebug(true),您将在System.out上获得整个协议跟踪。这将显示您实际发送的内容。