2011-01-11 10 views
0

Ich muss die Protokollierung der Rohdaten aktivieren, die während Webservice-Aufrufen/-Anfragen erfasst wurden (mit Metro WS 2.0).Protokollierung von Metro/Tube aktivieren

Ich habe versucht, die beiden folgenden Eigenschaften zu ermöglichen, aber sie geben gar kein Ergebnis an die Protokollierung:

System.setProperty("com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump", "true"); 
System.setProperty("com.sun.xml.ws.assembler.jaxws.TransportTubeFactory", "true"); 

Im Folgenden werden die gewünschte Wirkung, sondern mit jedem Eintrag protokolliert 8mal:

System.setProperty("com.sun.metro.soap.dump", "true"); 

Mit jedem Eintrag dupliziert 8 mal das Protokoll wird sehr unübersichtlich und sehr zeitaufwendig zu folgen. Wie kann ich die Verfolgung der Webservice-Aufrufe/-Anfragen erreichen, ohne dass alles in doppelter Weise gelöscht wird?

+0

Verwenden Sie log4j oder was? Kannst du Einzelheiten zur Umgebung angeben? – adrianboimvaser

+0

Ich stelle die Anwendung auf einem Glassfish 2.1-App-Server bereit und verwende den Standard java.util.logging.Logger für die Protokollierung. – aksamit

Antwort

0

Ich hatte ein ähnliches Problem, das ich beschlossen:

Metro : Printing/dumping out the contents of a SOAP packet.

Im Wesentlichen verwendet es die "MessageDumpingFeature". Sie finden dies im Verzeichnis Glassfish \ lib in der Datei webservices-rt.jar.

+0

Entschuldigung für die späte Antwort. Ich habe es geschafft, das erwartete Verhalten mit deiner Herangehensweise zu erreichen, danke! – aksamit