Spring Web Services Framework

org.springframework.ws.wsdl.wsdl11.provider
Class Soap12Provider

java.lang.Object
  extended by org.springframework.ws.wsdl.wsdl11.provider.DefaultConcretePartProvider
      extended by org.springframework.ws.wsdl.wsdl11.provider.Soap12Provider
All Implemented Interfaces:
BindingsProvider, ServicesProvider

public class Soap12Provider
extends DefaultConcretePartProvider

Implementation of the BindingsProvider and ServicesProvider interfaces that are SOAP 1.2 specific.

By setting the soapActions property, the SOAP Actions defined in the resulting WSDL can be set. Additionaly, the transport uri can be changed from the default HTTP transport by using the transportUri property.

Since:
1.5.0
Author:
Arjen Poutsma

Field Summary
static String DEFAULT_TRANSPORT_URI
          The default transport URI, which indicates an HTTP transport.
static String SOAP_12_NAMESPACE_PREFIX
          The prefix of the WSDL SOAP 1.2 namespace.
static String SOAP_12_NAMESPACE_URI
          The WSDL SOAP 1.1 namespace.
 
Fields inherited from class org.springframework.ws.wsdl.wsdl11.provider.DefaultConcretePartProvider
logger
 
Constructor Summary
Soap12Provider()
          Constructs a new version of the Soap12Provider.
 
Method Summary
 String getLocationUri()
          Returns the value used for the SOAP Address location attribute value.
 Properties getSoapActions()
          Returns the SOAP Actions for this binding.
 String getTransportUri()
          Returns the value used for the binding transport attribute value.
protected  void populateBinding(Definition definition, Binding binding)
          Called after the Binding has been created, but before any sub-elements are added.
protected  void populateBindingFault(Definition definition, BindingFault bindingFault, Fault fault)
          Called after the BindingFault has been created.
protected  void populateBindingInput(Definition definition, BindingInput bindingInput, Input input)
          Called after the BindingInput has been created.
protected  void populateBindingOperation(Definition definition, BindingOperation bindingOperation)
          Called after the BindingOperation has been created, but before any sub-elements are added.
protected  void populateBindingOutput(Definition definition, BindingOutput bindingOutput, Output output)
          Called after the BindingInput has been created.
protected  void populatePort(Definition definition, Port port)
          Called after the Port has been created, but before any sub-elements are added.
protected  void populateSoapAddress(javax.wsdl.extensions.soap12.SOAP12Address soapAddress)
          Called after the SOAP12Address has been created.
protected  void populateSoapBinding(javax.wsdl.extensions.soap12.SOAP12Binding soapBinding, Binding binding)
          Called after the SOAPBinding has been created.
protected  void populateSoapBody(javax.wsdl.extensions.soap12.SOAP12Body soapBody)
          Called after the SOAPBody has been created.
protected  void populateSoapFault(BindingFault bindingFault, javax.wsdl.extensions.soap12.SOAP12Fault soapFault)
          Called after the SOAPFault has been created.
protected  void populateSoapOperation(javax.wsdl.extensions.soap12.SOAP12Operation soapOperation, BindingOperation bindingOperation)
          Called after the SOAPOperation has been created.
 void setLocationUri(String locationUri)
          Sets the value used for the SOAP Address location attribute value.
 void setSoapActions(Properties soapActions)
          Sets the SOAP Actions for this binding.
 void setTransportUri(String transportUri)
          Sets the value used for the binding transport attribute value.
 
Methods inherited from class org.springframework.ws.wsdl.wsdl11.provider.DefaultConcretePartProvider
addBindings, addServices, getBindingSuffix, getServiceName, populateService, setBindingSuffix, setServiceName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_TRANSPORT_URI

public static final String DEFAULT_TRANSPORT_URI
The default transport URI, which indicates an HTTP transport.

See Also:
Constant Field Values

SOAP_12_NAMESPACE_PREFIX

public static final String SOAP_12_NAMESPACE_PREFIX
The prefix of the WSDL SOAP 1.2 namespace.

See Also:
Constant Field Values

SOAP_12_NAMESPACE_URI

public static final String SOAP_12_NAMESPACE_URI
The WSDL SOAP 1.1 namespace.

See Also:
Constant Field Values
Constructor Detail

Soap12Provider

public Soap12Provider()
Constructs a new version of the Soap12Provider.

Sets the binding suffix to Soap12.

Method Detail

getSoapActions

public Properties getSoapActions()
Returns the SOAP Actions for this binding. Keys are binding operation names; values are SOAP Action URIs.

Returns:
the soap actions

setSoapActions

public void setSoapActions(Properties soapActions)
Sets the SOAP Actions for this binding. Keys are binding operation names; values are SOAP Action URIs.

Parameters:
soapActions - the soap

getTransportUri

public String getTransportUri()
Returns the value used for the binding transport attribute value. Defaults to DEFAULT_TRANSPORT_URI.

Returns:
the binding transport value

setTransportUri

public void setTransportUri(String transportUri)
Sets the value used for the binding transport attribute value. Defaults to DEFAULT_TRANSPORT_URI.

Parameters:
transportUri - the binding transport value

getLocationUri

public String getLocationUri()
Returns the value used for the SOAP Address location attribute value.


setLocationUri

public void setLocationUri(String locationUri)
Sets the value used for the SOAP Address location attribute value.


populateBinding

protected void populateBinding(Definition definition,
                               Binding binding)
                        throws WSDLException
Called after the Binding has been created, but before any sub-elements are added. Subclasses can override this method to define the binding name, or add extensions to it.

Default implementation calls DefaultConcretePartProvider.populateBinding(javax.wsdl.Definition, javax.wsdl.Binding), adds the SOAP 1.1 namespace, creates a SOAPBinding, and calls populateSoapBinding(javax.wsdl.extensions.soap12.SOAP12Binding, javax.wsdl.Binding) sets the binding name to the port type name with the suffix appended to it.

Overrides:
populateBinding in class DefaultConcretePartProvider
Parameters:
definition - the WSDL4J Definition
binding - the WSDL4J Binding
Throws:
WSDLException

populateSoapBinding

protected void populateSoapBinding(javax.wsdl.extensions.soap12.SOAP12Binding soapBinding,
                                   Binding binding)
                            throws WSDLException
Called after the SOAPBinding has been created.

Default implementation sets the binding style to "document", and set the transport URI to the transportUri property value. Subclasses can override this behavior.

Parameters:
soapBinding - the WSDL4J SOAPBinding
Throws:
WSDLException - in case of errors
See Also:
SOAPBinding.setStyle(String), SOAPBinding.setTransportURI(String), setTransportUri(String), DEFAULT_TRANSPORT_URI

populateBindingFault

protected void populateBindingFault(Definition definition,
                                    BindingFault bindingFault,
                                    Fault fault)
                             throws WSDLException
Called after the BindingFault has been created. Subclasses can override this method to define the name, or add extensions to it.

Default implementation calls DefaultConcretePartProvider.populateBindingFault(javax.wsdl.Definition, javax.wsdl.BindingFault, javax.wsdl.Fault), creates a SOAPFault, and calls populateSoapFault(javax.wsdl.BindingFault, javax.wsdl.extensions.soap12.SOAP12Fault).

Overrides:
populateBindingFault in class DefaultConcretePartProvider
Parameters:
definition - the WSDL4J Definition
bindingFault - the WSDL4J BindingFault
fault - the corresponding WSDL4J Fault @throws WSDLException in case of errors
Throws:
WSDLException

populateSoapFault

protected void populateSoapFault(BindingFault bindingFault,
                                 javax.wsdl.extensions.soap12.SOAP12Fault soapFault)
                          throws WSDLException
Called after the SOAPFault has been created.

Default implementation sets the use style to "literal", and sets the name equal to the binding fault. Subclasses can override this behavior.

Parameters:
bindingFault - the WSDL4J BindingFault
soapFault - the WSDL4J SOAPFault
Throws:
WSDLException - in case of errors
See Also:
SOAPFault.setUse(String)

populateBindingInput

protected void populateBindingInput(Definition definition,
                                    BindingInput bindingInput,
                                    Input input)
                             throws WSDLException
Called after the BindingInput has been created. Subclasses can implement this method to define the name, or add extensions to it.

Default implementation calls DefaultConcretePartProvider.populateBindingInput(javax.wsdl.Definition, javax.wsdl.BindingInput, javax.wsdl.Input), creates a SOAPBody, and calls populateSoapBody(javax.wsdl.extensions.soap12.SOAP12Body). 2

Overrides:
populateBindingInput in class DefaultConcretePartProvider
Parameters:
definition - the WSDL4J Definition
bindingInput - the WSDL4J BindingInput
input - the corresponding WSDL4J Input @throws WSDLException in case of errors
Throws:
WSDLException

populateSoapBody

protected void populateSoapBody(javax.wsdl.extensions.soap12.SOAP12Body soapBody)
                         throws WSDLException
Called after the SOAPBody has been created.

Default implementation sets the use style to "literal". Subclasses can override this behavior.

Parameters:
soapBody - the WSDL4J SOAPBody
Throws:
WSDLException - in case of errors
See Also:
SOAPBody.setUse(String)

populateBindingOperation

protected void populateBindingOperation(Definition definition,
                                        BindingOperation bindingOperation)
                                 throws WSDLException
Called after the BindingOperation has been created, but before any sub-elements are added. Subclasses can implement this method to define the binding name, or add extensions to it.

Default implementation calls DefaultConcretePartProvider.populateBindingOperation(javax.wsdl.Definition, javax.wsdl.BindingOperation), creates a SOAPOperation, and calls populateSoapOperation(javax.wsdl.extensions.soap12.SOAP12Operation, javax.wsdl.BindingOperation) sets the name of the binding operation to the name of the operation.

Overrides:
populateBindingOperation in class DefaultConcretePartProvider
Parameters:
definition - the WSDL4J Definition
bindingOperation - the WSDL4J BindingOperation
Throws:
WSDLException - in case of errors

populateSoapOperation

protected void populateSoapOperation(javax.wsdl.extensions.soap12.SOAP12Operation soapOperation,
                                     BindingOperation bindingOperation)
                              throws WSDLException
Called after the SOAPOperation has been created.

Default implementation sets SOAPAction to the corresponding soapActions property, and defaults to "".

Parameters:
soapOperation - the WSDL4J SOAPOperation
bindingOperation - the WSDL4J BindingOperation
Throws:
WSDLException - in case of errors
See Also:
SOAPOperation.setSoapActionURI(String), setSoapActions(java.util.Properties)

populateBindingOutput

protected void populateBindingOutput(Definition definition,
                                     BindingOutput bindingOutput,
                                     Output output)
                              throws WSDLException
Called after the BindingInput has been created. Subclasses can implement this method to define the name, or add extensions to it.

Default implementation calls DefaultConcretePartProvider.populateBindingOutput(javax.wsdl.Definition, javax.wsdl.BindingOutput, javax.wsdl.Output), creates a SOAPBody, and calls populateSoapBody(javax.wsdl.extensions.soap12.SOAP12Body).

Overrides:
populateBindingOutput in class DefaultConcretePartProvider
Parameters:
definition - the WSDL4J Definition
bindingOutput - the WSDL4J BindingOutput
output - the corresponding WSDL4J Output @throws WSDLException in case of errors
Throws:
WSDLException

populatePort

protected void populatePort(Definition definition,
                            Port port)
                     throws WSDLException
Called after the Port has been created, but before any sub-elements are added. Subclasses can implement this method to define the port name, or add extensions to it.

Default implementation calls DefaultConcretePartProvider.populatePort(javax.wsdl.Definition,javax.wsdl.Port), creates a SOAPAddress, and calls populateSoapAddress(SOAP12Address).

Overrides:
populatePort in class DefaultConcretePartProvider
Parameters:
port - the WSDL4J Port
definition - the WSDL4J Definition
Throws:
WSDLException - in case of errors

populateSoapAddress

protected void populateSoapAddress(javax.wsdl.extensions.soap12.SOAP12Address soapAddress)
                            throws WSDLException
Called after the SOAP12Address has been created. Default implementation sets the location URI to the value set on this builder. Subclasses can override this behavior.

Parameters:
soapAddress - the WSDL4J SOAPAddress
Throws:
WSDLException - in case of errors
See Also:
SOAP12Address.setLocationURI(String), setLocationUri(String)

Spring Web Services Framework

Copyright © 2005-2010 The Spring Web Services Framework. All Rights Reserved.