Мониторинг веб-службы Glassfish

Я пытаюсь отслеживать конверты запроса/ответа для веб-службы, которую я разработал в java и развернул на Glassfish. У меня есть тривиальный пример java-клиента, который использует привязки, созданные из wsdl с помощью wsimport.

Я пробовал различные инструменты/утилиты для мониторинга обмена (WireShark, TCPMon и TCPMonitor для Eclipse), но каждый из них показывает одно и то же... вызов Glassfish для получения wsdl, и это все! Я знаю, что мой запрос проходит, потому что база данных обновляется. Однако я не вижу фактических конвертов запроса/ответа, которые вызывают это.

Я чувствую, что мне здесь не хватает чего-то фундаментального. Использует ли запрос/ответ другой порт? Wsdl говорит, что служба находится на 8080, это тот же порт, который я отслеживаю.

Любые идеи? Спасибо.


person Alan Midona    schedule 04.08.2012    source источник


Ответы (2)


У меня была аналогичная проблема, единственная разница в том, что WS был развернут в jboss_4.2.3. Мне удалось решить проблему с помощью wireshark. Дополнительную информацию о решении вы можете найти здесь< /а>.

По остальным вашим вопросам:

  • обычно вызов приходит на 8080, но ответ возвращается на другой порт (каждый раз другой).
person Olimpiu POP    schedule 15.02.2013

У вас есть два варианта:

  • Укажите только IP-адрес в фильтре Wireshark, без порта, и вы должны увидеть весь трафик.

  • Добавьте этот фрагмент кода в свой клиент, он поймает конверт SOAP:

Код:

SOAPMessage msg = ((SOAPMessageContext) context).getMessage ();
SOAPPart sp = msg.getSOAPPart ();
SOAPEnvelope env = sp.getEnvelope ();
person Miljen Mikic    schedule 15.02.2013