Hello,
developing service invoking script that looks like:
<cfinvoke webservice="#ServiceURL#" method="AddCustomer" returnvariable="ResponseData" argumentcollection="#stAguments#">
<cfinvokeargument name="api_key" value="#ServiceKey#" />
</cfinvoke>
stAguments structure filled before this call, obviously. Imagine you've forgot to add one of arguments into this container or used wrong argument type, say created invalid request. ColdFusion throws exception that can be catched, but can not (not literally) be read:
*Web service operation AddCustomer with parameters {postcode={12345},org_name={Terms test 7.79661762856},fax={},html={1},addr1={address1},firstname={sergey},city={Austin},country={},taxable={},notify={1},lastname={galashyn},addr2={},ssn={},api_key={8FE9AD0BCF2382D92A1080DB3AA62DB9},taxrate={0},terms={Net 15},active={},state={},salutation={Mr.},password={123},account_manager={1}} cannot be found.*
It breaks my head checking all these arguments manually one by one. This is the problem.
Maybe anyone uses some technique to make this easier.
I've even thought about some kind of parser to automate this comparison.
Will appreciate any thought and ideas.
Thank you.
P.S. Sorry for my English -- not my native language. Please ask if I've wrote anything not clear enough.
EDIT:
To clarify. Problem is not in accessing service. I am owner of it and I am definitely know all arguments and their types of each method.
Problem is only in reading error message when creating request -- filling method arguments container.
For example, method got 10 arguments and accidentally I've added 9 -- local instance of CF throws error that method can't be found and shows raw list (em'ed above) of fields I've passed. And I need to compare them one by one with method arguments to find what I've missed.
Really, it's an usability and time saving problem.