diff --git a/core/src/main/java/org/springframework/ws/client/core/support/WebServiceGatewaySupport.java b/core/src/main/java/org/springframework/ws/client/core/support/WebServiceGatewaySupport.java
index c2ecfc0c..6a850b6a 100644
--- a/core/src/main/java/org/springframework/ws/client/core/support/WebServiceGatewaySupport.java
+++ b/core/src/main/java/org/springframework/ws/client/core/support/WebServiceGatewaySupport.java
@@ -24,8 +24,10 @@ import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.oxm.Marshaller;
import org.springframework.oxm.Unmarshaller;
+import org.springframework.util.Assert;
import org.springframework.ws.WebServiceMessageFactory;
import org.springframework.ws.client.core.WebServiceTemplate;
+import org.springframework.ws.transport.WebServiceMessageSender;
/**
* Convenient super class for application classes that need Web service access.
@@ -86,6 +88,21 @@ public abstract class WebServiceGatewaySupport implements InitializingBean, Appl
webServiceTemplate.setDefaultUri(uri);
}
+ /** Returns the WebServiceMessageSender used by the gateway. */
+ public final WebServiceMessageSender[] getMessageSender() {
+ return webServiceTemplate.getMessageSenders();
+ }
+
+ /** Sets a single WebServiceMessageSender to be used by the gateway. */
+ public final void setMessageSender(WebServiceMessageSender messageSender) {
+ webServiceTemplate.setMessageSender(messageSender);
+ }
+
+ /** Sets multiple WebServiceMessageSender to be used by the gateway. */
+ public final void setMessageSenders(WebServiceMessageSender[] messageSenders) {
+ webServiceTemplate.setMessageSenders(messageSenders);
+ }
+
/** Returns the WebServiceTemplate for the gateway. */
public final WebServiceTemplate getWebServiceTemplate() {
return webServiceTemplate;
@@ -93,6 +110,7 @@ public abstract class WebServiceGatewaySupport implements InitializingBean, Appl
/** Sets the WebServiceTemplate to be used by the gateway. */
public final void setWebServiceTemplate(WebServiceTemplate webServiceTemplate) {
+ Assert.notNull(webServiceTemplate, "'webServiceTemplate' must not be null");
this.webServiceTemplate = webServiceTemplate;
}
diff --git a/core/src/main/java/org/springframework/ws/client/support/WebServiceAccessor.java b/core/src/main/java/org/springframework/ws/client/support/WebServiceAccessor.java
index b38e58db..816d63bb 100644
--- a/core/src/main/java/org/springframework/ws/client/support/WebServiceAccessor.java
+++ b/core/src/main/java/org/springframework/ws/client/support/WebServiceAccessor.java
@@ -55,11 +55,25 @@ public abstract class WebServiceAccessor extends TransformerObjectSupport implem
return messageSenders;
}
+ /**
+ * Sets the single message sender used for sending messages.
+ *