WSO2 ESB Proxy Service WSDL - wsdl

Am new to wso2 , i have created a proxy service which consists of Insequence with endpoint.
Proxy service -> insequence -> endpoint (service Address in axis2).
When i try to test the Proxy service from soap UI ( with wsdl which got from management console ) , then the request format is not correct.
Following is the request msg which i see in soap UI
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body/>
</soapenv:Envelope>
Please let me know how to get proper WSDL for proxy service of WSO2 ESB .

When you are creating/editing the proxy service, you can select the Publish WSDL option and give the WSDL as inline text, as a URL or as a Registry Resource. In this case you can give the WSDL available at your Axis2 service.

Related

WSO2 API Manager WSDL Endpoint

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

API Manager 1.7.0: disable WSDL from being loaded into registry

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.

swagger ui - issue in OPTIONS request to secure service

I have deployed Swagger UI (version swagger-ui-2.0.8) in tomcat. This will define a set of APIs which invokes services deployed in Tibco BW in another domain. so far everything worked perfectly fine but when we just implemented our Tibco BW service as SSL (uses **https**:xxxxxx:9090/user). Swagger send OPTIONS request since it is deployed in tomcat in another domain (CORS request). I have configured CORS for all responsee headers as "*".
The problem we have now is OPTIONS request from swagger does not have authentication header to hit BW service. How to achieve this. Please help
window.authorizations.add("Authorization", new ApiKeyAuthorization("Authorization", "Basic XXXXXXXX", "header"));
Thanks in Advance.
I think preflight OPTIONS request does have not to use authentication. Simply make the server respond to OPTIONS requests without any authentication.

consume secure web service asmx in asp.net mvc

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

Obtaining WSDL from a Web Service Endpoint Address

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.

Resources