I have a component registered in the CFadminiatrator. When I go to the
browser and run the path with the ?wsdl at the end, it gives the proper xml
response, showing the structure of the component.


When I make the argument value equal to a number, it executes fine. When I
make the arument value "arf", it bombs, giving the following error message:


Message: Could not perform web service invocation "NumberPlanes" because
java.lang.IllegalArgumentException: argument type mismatch


What gives? I'm not even using the argument in the function, just seeing if
I can pass a string into a numeric-returned function. If I change the
returnType of the function to "Any", and set the cfreturn tag to <cfreturn
an_argument> it bombs, giving the following error message.


Message: Could not perform web service invocation "NumberPlanes" because
java.lang.IllegalArgumentException


Are components extremely picky about what you can do? Or am I doing
something wrong, that isn't very obvious. Any help would be greatly
appreciated.

Invocation Code:
<cfinvoke webservice="Cost_Model" method="NumberPlanes"
returnVariable="foo1">
     <cfinvokeargument name="an_argument" value="arf">
</cfinvoke>


Component Code:
<cfcomponent>
<cffunction name="NumberPlanes" access="remote" returnType="numeric">
  <cfargument name="an_argument" type="any">
  <cfset first = 55>
  <cfset second = 3>
  <cfset get_records = first + second>
  <cfreturn get_records>
</cffunction>
</cfcomponent>


John Stanley
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings]

Reply via email to