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