我正在使用SOAPHandler.handleMessage(...)拦截从客户端到服务器的outgoint SOAP消息。
我需要确认在发送消息后进行拦截。不确定是否真的如此。有什么想法吗?
答案 0 :(得分:1)
有一个简单的技巧来检查你的假设。在handleMessage
方法中添加此代码:
SOAPMessage msg = ((SOAPMessageContext) context).getMessage();
SOAPPart sp = msg.getSOAPPart();
SOAPEnvelope env = sp.getEnvelope();
现在当你有一个SOAPEnvelope
尝试替换SOAP消息时,看看当接收者收到它时会发生什么。我会破坏惊喜并告诉你:它会被改变:-)
因此,您的SOAPHandler在实际发送之前拦截该消息。