More logging.
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
|
||||
package org.springframework.ws.client.core;
|
||||
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import javax.xml.transform.Result;
|
||||
import javax.xml.transform.Source;
|
||||
@@ -270,6 +271,7 @@ public class WebServiceTemplate extends WebServiceAccessor implements WebService
|
||||
if (tis != null) {
|
||||
try {
|
||||
messageContext.readResponse(tis);
|
||||
logResponse(messageContext);
|
||||
if (messageContext.hasResponse()) {
|
||||
WebServiceMessage response = messageContext.getResponse();
|
||||
if (!hasFault(connection, messageContext)) {
|
||||
@@ -308,6 +310,14 @@ public class WebServiceTemplate extends WebServiceAccessor implements WebService
|
||||
|
||||
/** Sends the request in the given message context over the connection. */
|
||||
private void sendRequest(WebServiceConnection connection, MessageContext messageContext) throws IOException {
|
||||
if (logger.isTraceEnabled()) {
|
||||
ByteArrayOutputStream os = new ByteArrayOutputStream();
|
||||
messageContext.getRequest().writeTo(os);
|
||||
logger.trace("WebServiceTemplate sends request [" + os.toString("UTF-8") + "]");
|
||||
}
|
||||
else if (logger.isDebugEnabled()) {
|
||||
logger.debug("WebServiceTemplate sends request [" + messageContext.getRequest() + "]");
|
||||
}
|
||||
TransportOutputStream tos = connection.getTransportOutputStream();
|
||||
try {
|
||||
messageContext.getRequest().writeTo(tos);
|
||||
@@ -328,6 +338,22 @@ public class WebServiceTemplate extends WebServiceAccessor implements WebService
|
||||
}
|
||||
}
|
||||
|
||||
private void logResponse(MessageContext messageContext) throws IOException {
|
||||
if (messageContext.hasResponse()) {
|
||||
if (logger.isTraceEnabled()) {
|
||||
ByteArrayOutputStream os = new ByteArrayOutputStream();
|
||||
messageContext.getResponse().writeTo(os);
|
||||
logger.trace("WebServiceTemplate receives response [" + os.toString("UTF-8") + "]");
|
||||
}
|
||||
else if (logger.isDebugEnabled()) {
|
||||
logger.debug("WebServiceTemplate receives response [" + messageContext.getRequest() + "]");
|
||||
}
|
||||
}
|
||||
else if (logger.isDebugEnabled()) {
|
||||
logger.debug("WebServiceTemplate receives no response for request [" + messageContext.getRequest() + "]");
|
||||
}
|
||||
}
|
||||
|
||||
/** Adapter to enable use of a WebServiceMessageCallback inside a WebServiceMessageExtractor. */
|
||||
private static class WebServiceMessageCallbackMessageExtractor implements WebServiceMessageExtractor {
|
||||
|
||||
|
||||
@@ -132,26 +132,30 @@ public class MessageDispatcher implements WebServiceMessageReceiver, BeanNameAwa
|
||||
}
|
||||
|
||||
public void receive(MessageContext messageContext) throws Exception {
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("MessageDispatcher with name '" + beanName + "' received request [" +
|
||||
messageContext.getRequest() + "]");
|
||||
}
|
||||
if (logger.isTraceEnabled()) {
|
||||
ByteArrayOutputStream os = new ByteArrayOutputStream();
|
||||
messageContext.getRequest().writeTo(os);
|
||||
logger.trace("Request contents: " + os.toString("UTF-8"));
|
||||
logger.trace(
|
||||
"MessageDispatcher with name '" + beanName + "' received request [" + os.toString("UTF-8") + "]");
|
||||
}
|
||||
else if (logger.isDebugEnabled()) {
|
||||
logger.debug("MessageDispatcher with name '" + beanName + "' received request [" +
|
||||
messageContext.getRequest() + "]");
|
||||
}
|
||||
dispatch(messageContext);
|
||||
if (messageContext.hasResponse()) {
|
||||
if (logger.isDebugEnabled()) {
|
||||
if (logger.isTraceEnabled()) {
|
||||
ByteArrayOutputStream requestStream = new ByteArrayOutputStream();
|
||||
messageContext.getRequest().writeTo(requestStream);
|
||||
ByteArrayOutputStream responseStream = new ByteArrayOutputStream();
|
||||
messageContext.getResponse().writeTo(responseStream);
|
||||
logger.trace("MessageDispatcher with name '" + beanName + "' sends response [" +
|
||||
responseStream.toString("UTF-8") + "] for request [" + requestStream.toString("UTF-8") + "]");
|
||||
}
|
||||
else if (logger.isDebugEnabled()) {
|
||||
logger.debug("MessageDispatcher with name '" + beanName + "' sends response [" +
|
||||
messageContext.getResponse() + "] for request [" + messageContext.getRequest() + "]");
|
||||
}
|
||||
if (logger.isTraceEnabled()) {
|
||||
ByteArrayOutputStream os = new ByteArrayOutputStream();
|
||||
messageContext.getResponse().writeTo(os);
|
||||
logger.trace("Response contents: " + os.toString("UTF-8"));
|
||||
}
|
||||
}
|
||||
else if (logger.isDebugEnabled()) {
|
||||
logger.debug("MessageDispatcher with name '" + beanName + "' sends no response for request [" +
|
||||
|
||||
Reference in New Issue
Block a user