Video Screencast Help

Output Variables Returned From Web Service is Unavailable

Created: 01 Oct 2012 • Updated: 01 Oct 2012 | 6 comments
This issue has been solved. See solution.

I have a project that is calling a web service and the web service returns an output. However, in the next step the output parameter is not available for use inside the workflow. Has anyone experienced this issue before and resolved it?

Comments 6 CommentsJump to latest comment

reecardo's picture

Is there a WSDL associated to your web service so I can see the output type? It might be non-serializable or something.

Also, if there's a radio button input associated with this output on the Params Usage tab (the radio buttons that say Required/Optional/Ignored)... make sure it's not set to Ignored

Aryanos's picture

I have the XML of it but I generated it using an URL instead of a WSDL file and yest the parameters are set to optional so they should be there. I've also tried setting them to required for the input/output but they're still not available downstream.

wsdl11.xml 7.17 KB

I like my beats fast and my bass down low

Aryanos's picture

Investigating it a bit deeper it looks like it's a WSDL complex datatype (array within the output) that it returning which may be causing the issues. I just tried generating the component in WF 7.5 beta and it still won't give me an output parameter to use downstream. 

I like my beats fast and my bass down low

Rob Moore's picture

I had this happen to me with a similar complex data type return. What I did was declare the variable prior to executing the webservice call, and then assign the return varialbe to that empty var.

 This was the only way I could make it work, not sure why wf does not make it availalbe dynamically, but it may have to do with the fact that it is a complex data type.


Aryanos's picture

Awesome, that worked Rob. Thanks a lot, spent hours researching and troubleshooting this thing.

I like my beats fast and my bass down low

reecardo's picture

The way the template looks for web service components, it looks like it will only add data to the stream if the web service method does not return void (i.e. nothing). My guess is the method is a void... however, one of the input variables is also an output variable.

Rob's suggestion above is a great workaround, though.