I am trying to Expose a WSDL in WSO2 API Manager, by selecting WSDL Endpoint in the Implementation tab.
And providing the service name and Port respectively.
But while testing the same, from Api Store, the response is 0 - No response body. Also the WSDL is not being invoked.
Please help with this.
I have checked many blogs and videos, but can't find exact solution.
Ex WSDL that I am using is: https://ws.cdyne.com/phoneverify/phoneverify.asmx?wsdl
Used the same wsdl and expose the service using api manager and got the response from the web server. But as per the query posted above you are testing the soap service using api store. There may be mismatch the param you are posting to web service. Therefore use tool like soapUI to test the web service.
User the followings while exposing the SOAP Service
SOAP WSDL - https://ws.cdyne.com/phoneverify/phoneverify.asmx?wsdl
SOAP Endpoint - https://ws.cdyne.com/phoneverify/phoneverify.asmx
Reference -
[1] http://blog.rajkumarr.com/2015/08/how-to-expose-soap-services-as-soap-services-via-wso2-api-manager.html
[2] http://www.vitharana.org/2015/01/soap-web-service-as-rest-api-using-wso2.html
[3] https://docs.wso2.com/display/AM191/Invoke+an+API+using+a+SOAP+Client
Related
It seems that when we use Swagger (SpringDoc) UI for the gateway, when a request is sent through it, the request is made directly to the service and not through the gateway. For example, in this example (linked from SpringDoc documentation), the swagger ui address is 158.101.191.70 while the request is being made to 172.17.0.9.
Isn't an important point of using swagger to let API users know what APIs we have and be able to test them? Thus, shouldn't the requests be made through the gateway and not directly? Maybe, they don't even have access to the services directly. Is there a solution?
When you register a service in the WSO2 API Manager via the Web or through REST interface, you can add a WSDL to your service description. This WSDL is interpeted and loaded into the WSO2 API Manager registry. Is it possible to disable this? Only register the WSDL URL itself.
In our case we have the WSDL and XSD stored somewhere else. We do not want the API manager stores this defintion again in his own registry.
The purpose to store WSDL is, if we store only the actual wsdl url and if we display that in store, user can directly invoke the backend service.(not via gateway)So, user will not use throttling there.
What we do is, when we store wsdl in APIManager, we change the service URLs in the original wsdl to point the gateway URL. So, when user creates request from the WSDL , always he will see the gateway URL only.
I want to consume secured web service in asp.net mvc, I need to create proxy class to this service
I tried to use wsdl.exe tool but it gave me the following errors
There was an error downloading
The request failed with HTTP status 401: Unauthorized.
is there another way to create proxy class
or there is another technique to call this secured web service in my application
It looks like the WSDL requires authentication in order to be downloaded. I suppose the Web Service also. The WSDL.exe utility allows you to specify the username and password to be used when downloading the WSDL. So go ahead, talk to the author of the web service to understand what account you need to use in order to access it and then try the /username and /password parameters:
wsdl.exe /username:john /password:secret http://example.com/foo.asmx?WSDL
I am new to web services even after watching a lot of videos and reading a large number of tutorials on WSDL I am unable to understand how to get URL for a method of web service from WSDL. the WSDL file I am provided with is this http://cons.epackagepro.com/m/Service.svc?wsdl I want to call a login method of this web service. Can somebody explain that how to extract exact url for a web service/web service method from a WSDL file and how to pass parameters to a web service (in this particular case I want to call login). All the tutorials I watched tells that service tag of WSDL file has an address tag which tells about the url of the service but this WSDL does not contains one.
One last thing, can I call this service with soap, even soap is not used in binding. And what if I want to call it using HTTP GET / HTTP POST method, how parameters will be provided.
My main concern is how to get url of a web service / web service method from WSDL? The platform for which I want to use it is IOS.
Thanks in advance.
Is there a generic way of obtaining the service WSDL by using the service endpoint address. I know this can be done by appending ?wsdl to Axis2 services. But does this property hold for other web service containers as well?
?wsdl works for all web services. So you can follow it.