Hi, On Thu, Jul 20, 2017 at 5:36 AM, Ishara Cooray <[email protected]> wrote:
> Hi Malintha, > + for the idea as it makes more sense to the api rather than giving only > one POST operation. > > Currently we can create soap apis only by giving the URl of the wsdl. > Are we going to support create soap apis by uploading wsdl as well? > Yes Ishara. We will support uploading a single wsdl as well as uploading a zip archive with dependent wsdls and XSDs. Thanks! > Thanks & Regards, > Ishara Cooray > Senior Software Engineer > Mobile : +9477 262 9512 <+94%2077%20262%209512> > WSO2, Inc. | http://wso2.com/ > Lean . Enterprise . Middleware > > On Mon, Jul 17, 2017 at 11:22 PM, Malintha Amarasinghe <[email protected] > > wrote: > >> Hi Maninda, >> >> If there are any POST operations defined as HTTP binding, we will make >> them normal HTTP POST operations. Sorry, may be my example is a bit >> confusing. >> >> If we take below set of operations, we will have to include HTTP POST >> operations as well. >> >> <wsdl:binding name="DelayedStockQuoteHttpGet" type="tns:Dela >> yedStockQuoteHttpGet"> >> <http:binding verb="*GET*"/> >> <wsdl:operation name="GetQuickQuote"> >> <http:operation location="*/GetQuickQuote*"/> >> <wsdl:input> >> <http:urlEncoded/> >> </wsdl:input> >> <wsdl:output> >> <mime:mimeXml part="Body"/> >> </wsdl:output> >> </wsdl:operation> >> <wsdl:operation name="GetQuoteDataSet"> >> <http:operation location="*/GetQuoteDataSet*"/> >> <wsdl:input> >> <http:urlEncoded/> >> </wsdl:input> >> <wsdl:output> >> <mime:mimeXml part="Body"/> >> </wsdl:output> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:binding name="DelayedStockQuoteHttpPost" type="tns:Del >> ayedStockQuoteHttpPost"> >> <http:binding verb="*POST*"/> >> <wsdl:operation name="GetQuickQuote"> >> <http:operation location="*/GetQuickQuote*"/> >> <wsdl:input> >> <mime:content type="application/x-www-form-urlencoded"/> >> </wsdl:input> >> <wsdl:output> >> <mime:mimeXml part="Body"/> >> </wsdl:output> >> </wsdl:operation> >> <wsdl:operation name="GetQuoteDataSet"> >> <http:operation location="*/GetQuoteDataSet*"/> >> <wsdl:input> >> <mime:content type="application/x-www-form-urlencoded"/> >> </wsdl:input> >> <wsdl:output> >> <mime:mimeXml part="Body"/> >> </wsdl:output> >> </wsdl:operation> >> </wsdl:binding> >> >> We will be extracting: >> >> - GET /GetQuickQuote >> - GET /GetQuoteDataSet >> - POST /GetQuickQuote >> - POST /GetQuoteDataSet >> >> >> >> I meant to say we would use "POST /" resource only for SOAP binding >> operations. For example: >> >> >> <wsdl:binding name="DelayedStockQuoteSoap" type="tns:Delayed >> StockQuoteSoap"> >> <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="GetQuote"> >> <soap:operation soapAction="http://ws.cdyne.com/GetQuote" style="document >> "/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> </wsdl:operation> >> <wsdl:operation name="GetQuickQuote"> >> <soap:operation soapAction="http://ws.cdyne.com/GetQuickQuote" style=" >> document"/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> </wsdl:operation> >> <wsdl:operation name="GetQuoteDataSet"> >> <soap:operation soapAction="http://ws.cdyne.com/GetQuoteDataSet" style=" >> document"/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> </wsdl:operation> >> </wsdl:binding> >> >> >> Thanks! >> Malintha >> >> >> On Mon, Jul 17, 2017 at 4:38 PM, Maninda Edirisooriya <[email protected]> >> wrote: >> >>> Hi Malintha, >>> >>> Why we are not making POST operations too as HTTP POST operations? As >>> POST is also a HTTP verb why make it different as SOAP? Are there any more >>> differences between SOAP binding that are not supported in HTTP REST like >>> operations? If that is the case is it correct to move other operations >>> (like GET etc.) to HTTP operations? >>> Thanks. >>> >>> >>> *Maninda Edirisooriya* >>> Senior Software Engineer >>> >>> *WSO2, Inc.*lean.enterprise.middleware. >>> >>> *Blog* : http://maninda.blogspot.com/ >>> *E-mail* : [email protected] >>> *Skype* : @manindae >>> *Twitter* : @maninda >>> >>> On Thu, Jul 13, 2017 at 7:21 PM, Malintha Amarasinghe < >>> [email protected]> wrote: >>> >>>> Hi, >>>> >>>> In C4 based API Manager, when we create an API using a WSDL, the API is >>>> created with only one resource which is POST /*. We used this for invoking >>>> the service with SOAP payloads. >>>> >>>> But in a typical WSDL, there are several operations defined which are >>>> of different bindings such as SOAP and HTTP. When we look at HTTP binding >>>> based operations, those are a slightly similar to REST operations which >>>> use HTTP verbs such as GET, DELETE, PUT etc. >>>> >>>> For APIM 3.0.0 we are considering parsing those operations as well and >>>> automatically create resources in the API. >>>> >>>> A user can select one of below two options when creating a WSDL-based >>>> API. This is because it is not good to mix up both SOAP and other REST-like >>>> (HTTP binding) operations in the same API. >>>> >>>> *1. Create a Pass-through SOAP API* >>>> >>>> If a user selects this option, an API will be created with "POST /". >>>> This is similar to an API Manager 2.1.0 SOAP API. >>>> >>>> *2. Create an API with HTTP binding operations* >>>> >>>> Then, the operations with HTTP binding are extracted from WSDL and >>>> those are used to create resources in API. >>>> >>>> For example, if we take below binding of the WSDL: >>>> >>>> <wsdl:binding name="WeatherForecastHttpGet" >>>> type="tns:WeatherForecastHttpGet"> >>>> <http:binding verb="*GET*" /> >>>> <wsdl:operation name="GetWeatherByZipCode"> >>>> <http:operation location="*/GetWeatherByZipCode*" /> >>>> <wsdl:input> >>>> <http:urlEncoded /> >>>> </wsdl:input> >>>> <wsdl:output> >>>> <mime:mimeXml part="Body" /> >>>> </wsdl:output> >>>> </wsdl:operation> >>>> <wsdl:operation name="GetWeatherByPlaceName"> >>>> <http:operation location="*/GetWeatherByPlaceName*" /> >>>> <wsdl:input> >>>> <http:urlEncoded /> >>>> </wsdl:input> >>>> <wsdl:output> >>>> <mime:mimeXml part="Body" /> >>>> </wsdl:output> >>>> </wsdl:operation> >>>> </wsdl:binding> >>>> >>>> >>>> These operations can be generated based on above: >>>> >>>> GET /GetWeatherByZipCode >>>> GET /GetWeatherByPlaceName >>>> >>>> >>>> Appreciate your inputs on this. >>>> >>>> Thanks! >>>> >>>> -- >>>> Malintha Amarasinghe >>>> *WSO2, Inc. - lean | enterprise | middleware* >>>> http://wso2.com/ >>>> >>>> Mobile : +94 712383306 <071%20238%203306> >>>> >>> >>> >> >> >> -- >> Malintha Amarasinghe >> *WSO2, Inc. - lean | enterprise | middleware* >> http://wso2.com/ >> >> Mobile : +94 712383306 <+94%2071%20238%203306> >> >> _______________________________________________ >> Architecture mailing list >> [email protected] >> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >> >> > -- Malintha Amarasinghe *WSO2, Inc. - lean | enterprise | middleware* http://wso2.com/ Mobile : +94 712383306
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
