В какой момент SOAPHandler перехватывает исходящие сообщения

Я использую SOAPHandler.handleMessage(...) для перехвата исходящих SOAP-сообщений от клиента к серверу.

Мне нужно подтвердить, что перехват происходит после того, как сообщение было отправлено. Не уверен, что это действительно так. Есть идеи?

1 ответ

Есть простой трюк, чтобы проверить ваше предположение. Добавьте этот код в handleMessage метод:

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

Теперь, когда у вас есть SOAPEnvelope попробуйте изменить сообщение SOAP и посмотреть, что произойдет, когда получатель получит его. Я испорчу сюрприз и открою вам: он будет изменен:-) Таким образом, ваш SOAPHandler перехватывает сообщение до того, как оно действительно будет отправлено.

Другие вопросы по тегам