Dear Friends,
I had converted my WSDL to REST. After That I called First REST SERVICE i.e. http://shoppie-test.apigee.net/v2/login?username=admin&apiKey=xxxxxxxxxxxxxxxxxxxxxxxxxxxx This one returned me a session ID No when when i use this Session ID to call second REST Service I get a Message "Session Expired" which should not come because if i use same session id (which i get in first call) for SOAP call from SOAP Client through my desktop i get accurate results. Second API call is :- http://shoppie-test.apigee.net/v22/shoppingcartcreate?sessionId=942ae85ded75cab658c753c357c99b80&sto... Please let me know why this issue is coming ?? WSDL URL - http://test.shoppiemall.in/api/v2_soap/?wsdl
As per my understanding parameters extracted from REST Service but not inserted in SOAP call as per I traced my REST call from Developer Console.
Please Help Regards, Saurabh
Solved! Go to Solution.
Hi Saurabh,
The generated policy of your proxy for your WSDL to read the request is below. As you can see, the proxy is expecting the sessionId as a form parameter; you are passing the sessionid as a query parameter. You will need to do a POST with the content-type set to application/x-www-form-urlencoded, and have your request body set accordingly.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ExtractVariables async="false" continueOnError="true" enabled="true" name="shoppingCartCreate-extract-form-param"> <DisplayName>shoppingCartCreate Extract Form Param</DisplayName> <FormParam name="sessionId"> <Pattern ignoreCase="true">{sessionId}</Pattern> </FormParam> <FormParam name="store"> <Pattern ignoreCase="true">{store}</Pattern> </FormParam> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> </ExtractVariables>
Charles
Hi Saurabh,
The generated policy of your proxy for your WSDL to read the request is below. As you can see, the proxy is expecting the sessionId as a form parameter; you are passing the sessionid as a query parameter. You will need to do a POST with the content-type set to application/x-www-form-urlencoded, and have your request body set accordingly.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ExtractVariables async="false" continueOnError="true" enabled="true" name="shoppingCartCreate-extract-form-param"> <DisplayName>shoppingCartCreate Extract Form Param</DisplayName> <FormParam name="sessionId"> <Pattern ignoreCase="true">{sessionId}</Pattern> </FormParam> <FormParam name="store"> <Pattern ignoreCase="true">{store}</Pattern> </FormParam> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> </ExtractVariables>
Charles
Thanks @Coverbeck will check and get back to you .