SOAPHandler在什么时候拦截传出消息

时间:2012-12-07 13:59:36

标签: java jax-ws soaphandler

我正在使用SOAPHandler.handleMessage(...)拦截从客户端到服务器的outgoint SOAP消息。

我需要确认在发送消息后进行拦截。不确定是否真的如此。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

有一个简单的技巧来检查你的假设。在handleMessage方法中添加此代码:

    SOAPMessage msg = ((SOAPMessageContext) context).getMessage();
    SOAPPart sp = msg.getSOAPPart();
    SOAPEnvelope env = sp.getEnvelope();

现在当你有一个SOAPEnvelope尝试替换SOAP消息时,看看当接收者收到它时会发生什么。我会破坏惊喜并告诉你:它会被改变:-) 因此,您的SOAPHandler在实际发送之前拦截该消息。