HTTP and SOAP Provider::WSDLRequest
Sends Simple Object Access Protocol (SOAP) requests in Web Services Descriptor Language (WSDL) to COM objects on remote servers. This procedure supports requests that perform updates subject to rollback. (A related procedure, HTTP and SOAP Provider::WSDLRequestWithNoRollback, supports requests such as queries that do not require rollback.) Used by Microsoft Provisioning Framework (MPF).
Arguments
The following table describes the XML elements and attributes. Unless otherwise indicated, the data type is string.
Element | Description, relationships, and attributes |
---|---|
codePage |
Description: By default, the Providers [HMC SDK] assumes that incoming HTTP is encoded as UTF-8. If it is, the provider automatically converts the HTTP to Unicode. If the incoming stream is not UTF-8, you will have faster performance if you specify the codePage value (for example, "932" for Japanese). Alternately, you can set the provider to scan for the code page (codePageAutoDetect = 1), but this will slow down performance. If the auto-detect is used, you can still specify a codePage value as a backup in case the auto-detect fails. Parent: |
codePageAutoDetect |
Description: 0 (default): The provider does not automatically detect the code page. By default, the provider assumes that incoming HTTP is encoded as UTF-8. If it is, the provider automatically converts the HTTP to Unicode, and there is no need to specify a value for codePageAutoDetect. If the incoming stream is not UTF-8, you can set the provider to scan for the code page (codePageAutoDetect = 1), but note that this will slow down performance. You will have better performance if you specify the code page (for example, for Japanese, set codePage to "932"). If the auto-detect fails, the provider looks for a codePage value; if it does not find one, it converts the HTTP to UTF-8, then to Unicode. Parent: |
connectionExclusionInterval |
Description: Whenever the provider cannot successfully send requests to a server, it immediately places the server on a bad server list and returns an error to indicate that the remote service is currently unavailable. At periodic intervals (for example, every 50000 milliseconds), the provider re-attempts the connection. This option mimimizes unnecessary resource consumption of network bandwidth, CPU cycles, and other system resources during a failure. It also enables the provider to generate a more immediate error to alert the caller that the server is not available. If no value is specified in the request for connectionExclusionInterval, the provider uses the value for the ConnectionExclusionInterval registry key, defined in \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Provisioning\Providers\MPFSoapProv. Note: The provider lists a server only for the provisioning engine that executes the provider. Other engines will not list the server unless they also fail to execute requests against it. Parents: |
errorCodePath |
Description: Parents: |
executeData |
Description: Children: |
method |
Description: Parents: |
parameters |
Description: Parents: Child: |
parameter |
Description: If the parameter has multiple values, specify them using value nodes. The following example sends the method a VARIANT array of size two in which each VARIANT contains an integer.
To send XML as a string, specify isXML ="1". The next example sends the string value <rootNode><value>1</value><value>2</value></rootNode>.
Parent: Attributes:
arrayTypeOptional. Indicates that the parameter is an array and specifies the data type for all elements. If arrayType is not specified and there are multiple values, the default is "anyType," which means an array of VARIANT. On output, this attribute is either set to the array type or removed ( if the response is not an array).
isXMLOptional. On input, if parameter contains well- formed XML, the method converts it to a string; otherwise, the provider fails the request. On output, if the response is well-formed XML, the method places this XML under the parameter element; otherwise, it removes the isXML attribute and returns the value in the response format.
|
password |
Description: Parents: Maximum Length: |
port |
Description: Parents: |
receiveTimeout |
Description: The minimum value allowed is 1,000 and the maximum is 3,600,000. If a value outside this range is specified, the provider will fail with error c5000003. The default is 30,000. Parent: |
requestInfo |
Description: Parent: Children: |
retryTimes |
Description: Parent: |
returnValue |
Description: Parent: Attributes:
arrayTypeOptional; output only. Specifies that the returned value is an array and specifies the data type for all elements. This attribute is either set to the array type or removed (if the response is not an array).
isXMLOptional. If specified and the response is well- formed XML, the method places the XML under the returnValue element; otherwise, it removes the isXML attribute and returns the value in the response format.
|
rollbackInfo |
Description: Parent: Children: |
serviceName |
Description: Parents: |
userName |
Description: Parents: Maximum Length: |
wsdlFile |
Description: If the WSDL URL uses the HTTPS protocol then the POST URLs in the WSDL file must also use the HTTPS protocol. Parents: |
wsmlFile |
Description: Parents: |
Remarks
No remarks
Schema Definition
Input
<executeData>1..1
<requestInfo>1..1
<wsdlFile>1..1</wsdlFile>
<method>1..1</method>
<parameters>1..1
<parameter arrayType=".." isXML="..">0..unbounded</parameter>
</parameters>
<serviceName>0..1</serviceName>
<port>0..1</port>
<wsmlFile>0..1</wsmlFile>
<userName>0..1</userName>
<password>0..1</password>
<retryTimes>0..1</retryTimes>
<receiveTimeout>0..1</receiveTimeout>
<connectionExclusionInterval>0..1</connectionExclusionInterval>
<codePageAutoDetect>0..1</codePageAutoDetect>
<codePage>0..1</codePage>
<errorCodePath>0..1</errorCodePath>
<returnValue isXML="..">0..1</returnValue>
</requestInfo>
<rollbackInfo>1..1
<wsdlFile>1..1</wsdlFile>
<method>1..1</method>
<parameters>1..1
<parameter arrayType=".." isXML="..">0..unbounded</parameter>
</parameters>
<serviceName>0..1</serviceName>
<port>0..1</port>
<wsmlFile>0..1</wsmlFile>
<userName>0..1</userName>
<password>0..1</password>
<codePage>0..1</codePage>
<codePageAutoDetect>0..1</codePageAutoDetect>
<connectionExclusionInterval>0..1</connectionExclusionInterval>
<receiveTimeout>0..1</receiveTimeout>
<retryTimes>0..1</retryTimes>
<errorCodePath>0..1</errorCodePath>
</rollbackInfo>
</executeData>
Output
<executeData>1..1
<requestInfo>1..1</requestInfo>
<parameters>1..1
<parameter arrayType=".." isXML="..">0..unbounded</parameter>
</parameters>
<returnValue arrayType=".." isXML="..">1..1</returnValue>
</requestInfo>
</executeData>
Sample Code
Example XML Request
The following sample request XML describes a method call for a sample COM object. For detailed instructions on setting up DocSample1, refer to the MSDN topic "Using a High Level API for SOAP Messages."
<request>
<procedure>
<execute namespace='HTTP and SOAP Provider' procedure='WSDLRequestWithNoRollback'>
<executeData>
<requestInfo>
<wsdlFile>https://localhost/MyProvisioning/UserAdmin.wsdl</wsdlFile>
<method>CreateUser</method>
<parameters>
<parameter>John</parameter>
</parameters>
</requestInfo>
<rollbackInfo>
<wsdlFile>https://localhost/MyProvisioning/UserAdmin.wsdl</wsdlFile>
<method>DeleteUser</method>
<parameters>
<parameter>John</parameter>
</parameters>
</rollbackInfo>
</executeData>
<after source='executeData' sourcePath='requestInfo/returnValue' destination='data'/>
</execute>
</procedure>
</request>
Example XML Response
The following code fragment shows the format for data this procedure returns. For more information on individual elements and attributes, see the Elements and Attributes table.
<response>
<data>
<returnValue>John@MyDomain.com</returnValue>
</data>
</response>
Applies To
Hosted Messaging and Collaboration version 4.5
Hosted Messaging and Collaboration version 4.0
Hosted Messaging and Collaboration version 3.5
Hosted Messaging and Collaboration version 3.0
Windows-based Hosting version 4.5
Windows-based Hosting version 4.0
Windows-based Hosting version 3.5
Windows-based Hosting for Applications version 1.0