Журнал оси2 клиентских запросов и ответов - PullRequest
18 голосов
/ 26 марта 2010

Я хотел бы регистрировать все запросы / ответы, сделанные клиентом axis2.Я попытался создать файл с именем client-config.wsdd в качестве описателя в http://code.google.com/support/bin/answer.py?hl=en&answer=15137, но безуспешно (я не получаю файл журнала).

Запросы выполняются через https, и я не уверенэто важно.Я пытался

<transport name="http" pivot="java:org.apache.axis.transport.http.HTTPSender"/>

и

<transport name="https" pivot="java:org.apache.axis.transport.http.HTTPSender"/>

безуспешно.

Ответы [ 5 ]

34 голосов
/ 14 июня 2010

Для ведения журнала на стороне клиента для сообщений SOAP на стороне Axis2 просто используйте следующие аргументы JVM во время работы автономного клиента или включите аргументы этой виртуальной машины в приложение. Скрипт запуска сервера,

JAVA_OPTS=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog -Dorg.apache.commons.logging.simplelog.showdatetime=true -Dorg.apache.commons.logging.simplelog.log.httpclient.wire=debug -Dorg.apache.commons.logging.simplelog.log.org.apache.commons.httpclient=debug

C: \ java% JAVA_OPTS% YourClientAppln.java

Cheers, Sankar

2 голосов
/ 29 ноября 2016

Если вы добавите приведенные ниже строки в файл log4j.properties, вам не нужно будет передавать какие-либо параметры виртуальной машины или JVM.

log4j.logger.httpclient.wire.content = DEBUG, Axis3LogFile

#Axis2
log4j.appender.Axis2LogFile=org.apache.log4j.RollingFileAppender
log4j.appender.Axis2LogFile.File=${catalina.base}/logs/Axis2-client.log
log4j.appender.Axis3LogFile.layout=org.apache.log4j.PatternLayout
log4j.appender.Axis3LogFile.layout.ConversionPattern=%d{ISO8601} [%X{UUID}] %5p %t %c{1} - %m%n
1 голос
/ 17 ноября 2010

Я знаю, что это немного многословно, но вот как мы решили это:

SOAPFactory factory = OMAbstractFactory.getSOAP12Factory();
OMElement requestElement = request.getOMElement(RegisterIntegrationAgent.MY_QNAME, factory);
LOGGER.debug(requestElement);
0 голосов
/ 01 ноября 2013

-Dorg.apache.commons.logging.Log = org.apache.commons.logging.impl.SimpleLog -Dorg.apache.commons.logging.simplelog.showdatetime = true -Dorg.apache.commons.logging.simplelog log.httpclient.wire = debug -Dorg.apache.commons.logging.simplelog.log.org.apache.commons.httpclient = debug

Это сработало

0 голосов
/ 30 марта 2010

Обычно я просто регистрирую тело сообщения SOAP, переданного в мой класс обслуживания.

public OMElement myOperation(OMElement request) throws AxisFault {

    log.debug("Request: {}", request);

    ..

    log.debug("Response: {}", response);

    return response
}

Низкотехнологичный, но у меня работает: -)

...