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

Reply via email to