Hi all. The problem I am getting is that I am calling a webservice that takes four paramters: Domain, Username, PlanName and OldPlanName yet I can see when the webservice is called that the parameters being passed to it are blank. I have an almost identical web call that uses some of the same parameters without suffering from this problem - it does not matter what order I call the two webservices, it's allways the UpgradeLinuxADStructure web call that suffers from this problem. Can anyone spot any obvious mistakes or tell me what I may be doing wrong please?
The working web call has the following before nodes:
<before source="data" sourcePath="domain" destination="executeData" destinationPath="requestInfo/body/soap:Body/linux:change_package/domain" mode="merge"/>
<before source="data" sourcePath="planName" destination="executeData" destinationPath="requestInfo/body/soap:Body/linux:change_package/package" mode="merge"/>
<before source="data" sourcePath="domain" destination="executeData" destinationPath="rollbackInfo/body/soap:Body/linux:rollback_change_package/domain" mode="merge"/>
<before source="data" sourcePath="oldPlanName" destination="executeData" destinationPath="rollbackInfo/body/soap:Body/linux:rollback_change_package/package" mode="merge"/>
The web call that isn't working is as follows (in full):
<!-- Update AD -->
<execute namespace="HTTP and SOAP Provider" procedure="SoapRequest">
<executeData>
<requestInfo>
<useTip>0</useTip>
<url>http://internal.provisioningservice.com/WebHosting.asmx</url>
<action>http://provisioning.co.uk/webservices/UpgradeLinuxADStructure</action>
<userName>TEST</userName>
<password>TEST</password>
<body>
<soap:Body xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<UpgradeAD xmlns="http://provisioning.co.uk/webservices">
<UserName/>
<Domain/>
<PlanName/>
<OldPlanName/>
</UpgradeAD>
</soap:Body>
</body>
</requestInfo>
<rollbackInfo>
<useTip>0</useTip>
<url>http://internal.provisioningservice.com/WebHosting.asmx</url>
<action>http://provisioning.co.uk/webservices/UpgradeLinuxADStructure</action>
<userName>TEST</userName>
<password>TEST</password>
<body>
<soap:Body xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<RollBackAD xmlns="http://provisioning.co.uk/webservices">
<UserName/>
<Domain/>
<PlanName/>
<OldPlanName/>
</RollBackAD>
</soap:Body>
</body>
</rollbackInfo>
</executeData>
<before source="data" sourcePath="username" destination="executeData" destinationPath="requestInfo/body/soap:Body/UpgradeAD/UserName" mode="merge"/>
<before source="data" sourcePath="username" destination="executeData" destinationPath="rollbackInfo/body/soap:Body/RollBackAD/UserName" mode="merge"/>
<before source="data" sourcePath="domain" destination="executeData" destinationPath="requestInfo/body/soap:Body/UpgradeAD/Domain" mode="merge"/>
<before source="data" sourcePath="domain" destination="executeData" destinationPath="rollbackInfo/body/soap:Body/RollBackAD/Domain" mode="merge"/>
<before source="data" sourcePath="planName" destination="executeData" destinationPath="requestInfo/body/soap:Body/UpgradeAD/PlanName" mode="merge"/>
<before source="data" sourcePath="planName" destination="executeData" destinationPath="rollbackInfo/body/soap:Body/RollBackAD/PlanName" mode="merge"/>
<before source="data" sourcePath="oldPlanName" destination="executeData" destinationPath="requestInfo/body/soap:Body/UpgradeAD/OldPlanName" mode="merge"/>
<before source="data" sourcePath="oldPlanName" destination="executeData" destinationPath="rollbackInfo/body/soap:Body/RollBackAD/OldPlanName" mode="merge"/>
<after source="executeData" sourcePath="result" destination="data" destinationPath="UpgradeResult" mode="merge" />
<after source="executeData" sourcePath="result" destination="data" destinationPath="UpgradeResultSuccess" mode="merge" >
<xsl:template match="*">
<UpgradeResultSuccess>
<xsl:value-of select="substring-before(substring-after(., '<result>'), '</result>')"/>
</UpgradeResultSuccess>
</xsl:template>
</after>
</execute>