Reputation: 1449
I have a registered stored process that adds up two numbers.
%let sum = %SYSEVALF(&NUM1 + &NUM2);
data _null_;
file _webout;
PUT "&SUM";
RUN;
The stored process is registered to deliver a stream, both input variables are registered as numerical, _webout output parameter is registered as a string (registration of this parameter doesn't change anything).
There is nothing else included.
I am using SOAPUI to create a SOAP envelope based on autogenerated WSDL file. Soap request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:biw="http://www.sas.com/xml/namespace/biwebservices">
<soapenv:Header/>
<soapenv:Body>
<biw:wSDL_Test>
<biw:parameters>
<!--Optional:-->
<biw:NUM1>1</biw:NUM1>
<!--Optional:-->
<biw:NUM2>1</biw:NUM2>
</biw:parameters>
</biw:wSDL_Test>
</soapenv:Body>
</soapenv:Envelope>
I am expecting a response with number 2, but I get this instead:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<n:wSDL_TestResponse xmlns:n="http://www.sas.com/xml/namespace/biwebservices">
<n:wSDL_TestResult>
<n:Streams>
<n:_WEBOUT contentType="text/html;charset=windows-1252">
<n:Value>Mgo=</n:Value>
</n:_WEBOUT>
</n:Streams>
</n:wSDL_TestResult>
</n:wSDL_TestResponse>
</soapenv:Body>
</soapenv:Envelope>
The value "Mgo=" is given back regardless of any two numbers being added. If I call on the stored process that is converted into a webservice from SAS EG or from mid-tier Web Stored Processes App, I get a correct response with a desired sum.
It is my first webservice and I am using it as a POC for something else. I feel like it has got to be something very simple, but I am not sure what it is. Any help is appreciated!
Regards, Vasilij
Upvotes: 1
Views: 716