Colm Brazel wrote:
If you click the links on http://www.xignite.com/xSurvey.asmx for one or more of the methods (I hope to set this one up shortly here) they will give you SOAP Request and Response example code. Also you get the typical values you should use for <cfinvokeargument> if you use one of their web services.
Yeah - if I go to the URL of the web service itself without ?wsdl on the end, then I get all sorts of method descriptions including the example SOAP packets.
As it turns out SOAPScope the product (mentioned by your good self) is a very specific packet sniffer and will pick up any requests from the computer its running on to a specified URL. BTW : SOAPScope is ace! Definately gonna get someone to part with the massive $99 purchase price! (http://www.mindreef.com/)
That leads me back to a question I asked a bit on one of the mailing lists - I forget which....
I have method that looks like this :
<s:element name="ListProducts">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="permission" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="dateRange" type="s0:DateRange" />
<s:element minOccurs="0" maxOccurs="1" name="postCodeArea" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="rtb" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="hasRatings" type="s0:TriValue" />
<s:element minOccurs="0" maxOccurs="1" name="productType" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
DateRange looks like this :
<s:complexType name="DateRange">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="From" type="s:dateTime" />
<s:element minOccurs="1" maxOccurs="1" name="To" type="s:dateTime" />
</s:sequence>
</s:complexType>
TriValue looks like this : <s:simpleType name="TriValue"> <s:restriction base="s:string"> <s:enumeration value="True" /> <s:enumeration value="False" /> <s:enumeration value="Either" /> </s:restriction> </s:simpleType>
My CFSCRIPT to call the webservice looks like this : <cfscript> enetws = CreateObject("WebService",wsURL);
//Date Structure
dateRange = StructNew();
dateRange.from = DateFormat(DateAdd("y",-10,Now()),"YYYY-MM-DD")&"T00:00:00Z";
dateRange.to = DateFormat(DateAdd("d",+10,Now()),"YYYY-MM-DD")&"T00:00:00Z";
LPResponse = enetws.ListProducts(permission='', DateRange='#dateRange#', postCodeArea='', rtb='', hasRatings='Either', productType='');
</cfscript>
CF doesn't actually sent anything to the web services, but I get the following error:
Web service operation "ListProducts" with parameters {hasRatings={Either},rtb={},productType={},DateRange={{TO={2003-12-13T00:00:00Z},FROM={2003-11-23T00:00:00Z},}},permission={},postCodeArea={},} could not be found.
The only thing I can see wrong is that there is an extra comma at the end of the arguments as well as at the end of the DateRange complex type.
Anyone seen this problem before???
I'm running cfmx6.1 with the webservices update and hotfix.
HELP!!!!
Regards
Stephen
-- ** Archive: http://www.mail-archive.com/dev%40lists.cfdeveloper.co.uk/
To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] For human help, e-mail: [EMAIL PROTECTED]
