Show Table of Contents
13.9.18. Using the SOAPProxy Action
A SOAPProxy action is:
- both a producer and consumer of web services.
- all that is required is a property pointing to the external wsdl.
- a way to allow the WSDL to be automatically transformed (via the optional wsdlTransform property.)
- a way to ensure that SOAP is not tied to HTTP. The WSDL is read, and if an HTTP transport is defined, that will be used.
- a way to optionally apply HttpRouter properties as overrides if you are using HTTP.
If the WSDL specifies an HTTP transport, then any of the HttpRouter properties can be applied.
Table 13.35.
| Property | Description | Required |
|---|---|---|
| wsdlTransform |
A <smooks-resource-list> xml config file allowing for flexible wsdl transformation.
| No |
| wsdlCharset |
The character set the original wsdl (and imported resources) is encoded in UTF-8. It will be transformed to UTF-8 if it is a supported encoding by the underlying platform.
| No |
| endpointUrl |
Example of an HttpRouter property, useful when domain name matching is important for SSL certs.
| No |
| file |
Apache Commons HTTPClient properties file, useful when proxying to a web service via SSL.
| No |
| clientCredentialsRequired |
Whether the Basic Auth credentials are required to come from the end client, or if the credentials specified inside file can be used instead. Default is "true".
| No |
| wsdl |
The original wsdl url whose WS endpoint will get re-written and exposed as new wsdl from the ESB. Depending upon the
<definitions><service><port><soap:address location attribute's protocol (for example "http"), a protocol-specific SOAPProxyTransport implementation is used.
The value can reference a location based on five different schemes:
| Yes |
Example 13.16. Sample Configuration: Basic scenario
<action name="proxy" class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy">
<property name="wsdl" value="http://host/foo/HelloWorldWS?wsdl"/>
</action>Example 13.17. Sample Configuration: Basic Authentication and SSL
<action name="proxy" class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy">
<property name="wsdl" value="https://host/foo/HelloWorldWS?wsdl"/>
<property name="endpointUrl" value="https://host/foo/HelloWorldWS"/>
<property name="file" value="/META-INF/httpclient-8443.properties"/>
<property name="clientCredentialsRequired" value="true"/>
</action>
Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.