2010-03-26 20 views
16

Bir axis2 istemcisi tarafından yapılan tüm istekleri/yanıtları günlüğe kaydetmek istiyorum. http://code.google.com/support/bin/answer.py?hl=en&answer=15137 numaralı telefondan client-config.wsdd adı verilen bir dosya oluşturmayı denedim ancak başarılı olmadı (günlük dosyası almıyorum).Log axis2 istemci istekleri ve yanıtları

https üzerinden istekler yapıldı ve önemli olup olmadığından emin değilim. Başarı olmadan

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

ve

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

çalıştı.

+0

benim için de çalışmaz. muhtemelen önceki sürümleri için doğruydu (yani, eksen v1) – maayank

cevap

32

:-) benim için çalışıyor. Sunucu başlangıç ​​komut dosyası,

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

Alkış, Sankar

+0

Sankar: Bugün kahramanımın adı. – Kieveli

+0

VM argümanlar bu ayıklama yapılandırmalarında parametreleri/Çalıştır yapılandırmaları yazma, Eclipse bunu çalıştırmak için –

+0

Zaten Log4j logger kullanıyorsanız: log4j.logger.org.apache.commons.httpclient = ayıklama log4j.logger.httpclient .wire = hata ayıklama –

0

Normalde SOAP iletisinin gövdesini günlüğe kaydediyorum, hizmet sınıfıma ilettim.

public OMElement myOperation(OMElement request) throws AxisFault { 

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

    .. 

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

    return response 
} 

Düşük teknolojili ama sadece tek başına müşteri çalıştırırken aşağıdaki JVM bağımsız değişkenleri kullanabilir veya başvuru No. bu VM args arasında

SABUN mesajlar için Axis2 istemci tarafı kaydı için
+0

İstemci günlüğünü aradığım için teşekkürler. –

+0

Manuel tarafından belirtildiği gibi, bu sadece sunucu tarafı için geçerlidir. – maayank

1

Ben biraz ayrıntılı biliyorum, ama burada biz bunu nasıl çözdüğünü açıklanmıştır:

0

-Dorg.apache.commons.logging.Log = org.apache.commons.logging.impl.SimpleLog -Dorg.apache.commons.logging.simplelog.showdatetime = true -Dorg.apache.commons.logging.simple log.log.httpclient.wire = ayıklama -Dorg.apache.commons.logging.simplelog.log.org.apache.commons.httpclient = ayıklama

Bu

+5

2 yaşındaki yanıtın kopyası –

+0

Tam olarak değil. Tel verilerini kaydeden httpclient.wire desenini içerir. – Scott

1

çalıştı Eğer log4j için aşağıdaki satırları eklerseniz .properties dosyası, herhangi bir VM veya JVM parametresini geçmemize gerek yoktur.

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 
İlgili konular