Yes, the objective is to be able to release newer versions of webapps without depending on product releases so we can iteratively do improvements to those. Ex: An app with API Analytics.
Thanks, NuwanD. On Mon, Aug 17, 2015 at 8:49 AM, Joseph Fonseka <[email protected]> wrote: > Hi Nirmal > > IMO we should have version number in war since we will be shipping fixes > which means a new war. And changing the context is also not good because > then client has to changed. So I think the third option is the best if it > works. > > > Thanks > Jo > > On Sat, Aug 15, 2015 at 9:16 PM, Thilini Cooray <[email protected]> wrote: > >> Hi Nirmal, >> >> Thanks for the suggestion. We are looking in to the most suitable >> approach to version the API. As you have mentioned, it would be a better >> approach if we can direct the requests to the latest API version. I will >> look into it. >> >> On Sat, Aug 15, 2015 at 11:16 AM, Nirmal Fernando <[email protected]> >> wrote: >> >>> Any particular reason for having a war file per version? Much better >>> approach would be to version the API classes. That way you could get all >>> traffic without an explicit version on to the latest available REST API. >>> You need to embed version info into API classes. >>> >>> https://developer.github.com/v3/ Github api is a good reference to >>> check. >>> >>> On Sat, Aug 15, 2015 at 10:17 AM, Sanjeewa Malalgoda <[email protected]> >>> wrote: >>> >>>> +1 for option 02. >>>> On Aug 15, 2015 10:01 AM, "Thilini Cooray" <[email protected]> wrote: >>>> >>>>> Hi, >>>>> >>>>> We need to version a webapp which contains RESTful APIs. >>>>> This webapp will be deployed in WSO2 Api Manager. >>>>> >>>>> Following are 3 approaches I found for the purpose : >>>>> >>>>> 1. Make war name as <warName>${project.artifactId}-${pom.version}</ >>>>> warName> which will output webappName-version.war >>>>> >>>>> Its endpoint address is http://HostName:port >>>>> /webappName-version/ >>>>> Ex : https://localhost:9443/api-import-export-1.0.0/ >>>>> >>>>> 2. Make war name as <warName> >>>>> ${project.artifactId}#${pom.version}</warName> which will output >>>>> webappName#version.war >>>>> >>>>> This will allow Tomcat server to identify versions of the >>>>> web app. >>>>> Its endpoint address is http://HostName:port/ >>>>> webappName/version/ >>>>> Ex : https://localhost:9443/api-import-export/1.0.0/ >>>>> <https://localhost:9443/api-import-export-1.0.0/> >>>>> >>>>> WSO2 Application Server follows this approach [1]. >>>>> >>>>> 3. Apache tomcat consists of another approach using "##" for >>>>> context naming [2]. >>>>> That approach needs to make war name as <warName> >>>>> ${project.artifactId}##${pom.version}</warName> which will output >>>>> webappName##version.war >>>>> >>>>> Its endpoint address is http://HostName:port/webappName/ >>>>> This will use the latest version. >>>>> Ex : https://localhost:9443/api-import-export/ >>>>> <https://localhost:9443/api-import-export-1.0.0/> >>>>> However this naming convention cannot be deployed in WSO2 >>>>> Api Manager. It returns AbstractWebappDeployer Unsupported file path >>>>> format. >>>>> >>>>> What is the best approach to follow when versioning the webapp ? >>>>> >>>>> [1] https://docs.wso2.com/display/AS521/Webapp+Versioning >>>>> [2] http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Naming >>>>> >>>>> Thanks, >>>>> ThiliniC. >>>>> >>>>> -- >>>>> Best Regards, >>>>> >>>>> *Thilini Cooray* >>>>> Software Engineer >>>>> Mobile : +94 (0) 774 570 112 <%2B94%20%280%29%20773%20451194> >>>>> E-mail : [email protected] >>>>> >>>>> WSO2 Inc. www.wso2.com >>>>> lean.enterprise.middleware >>>>> >>>> >>>> _______________________________________________ >>>> Dev mailing list >>>> [email protected] >>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>> >>>> >>> >>> >>> -- >>> >>> Thanks & regards, >>> Nirmal >>> >>> Team Lead - WSO2 Machine Learner >>> Associate Technical Lead - Data Technologies Team, WSO2 Inc. >>> Mobile: +94715779733 >>> Blog: http://nirmalfdo.blogspot.com/ >>> >>> >>> >> >> >> -- >> Best Regards, >> >> *Thilini Cooray* >> Software Engineer >> Mobile : +94 (0) 774 570 112 <%2B94%20%280%29%20773%20451194> >> E-mail : [email protected] >> >> WSO2 Inc. www.wso2.com >> lean.enterprise.middleware >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > > -- > *Joseph Fonseka* > WSO2 Inc.; http://wso2.com > lean.enterprise.middleware > > mobile: +94 772 512 430 > skype: jpfonseka > > * <http://lk.linkedin.com/in/rumeshbandara>* > > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Nuwan Dias Technical Lead - WSO2, Inc. http://wso2.com email : [email protected] Phone : +94 777 775 729
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
