轴:记录SOAP http请求和响应

| 我正在与Axis合作构建SOAP客户端。我想在某处打印完整的http请求和响应。我设法创建了处理程序,该处理程序可以打印SOAP信封。如何扩展它以打印完整的http?
public class CustomMessageHandler extends GenericHandler {

    HandlerInfo hi;

    public void init(HandlerInfo info) {
        hi = info;
        System.out.println(\"CustomMessageHandler initialized\");
    }

    public QName[] getHeaders() {
        return hi.getHeaders();
    }

    public boolean handleRequest(MessageContext context) {
        try {
            SOAPMessageContext smc = (SOAPMessageContext) context;
            SOAPMessage msg = smc.getMessage();
            System.out.println(\"request:\");
            msg.writeTo(System.out);
            System.out.println(\"\");

        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return true;
    }

    public boolean handleResponse(MessageContext context) {
        try {
            SOAPMessageContext smc = (SOAPMessageContext) context;
            SOAPMessage msg = smc.getMessage();
            System.out.println(\"response:\");
            msg.writeTo(System.out);
            System.out.println(\"\");

        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return true;
    }
}
    
已邀请:
在此阶段,请求和响应处理程序可能没有完整的请求和响应。 Axis Servlet可能会执行此操作或使用HTTP处理程序。 是否尝试编写过滤器并记录完整的请求和响应?     

要回复问题请先登录注册