I am hoping that this is the right forum to post my question. This is not related to any technology but related to the procedures that is followed by the most of the vendors to support multiple versions of the given project/module/tool.
We have an internal application that is being used by all other applications. Parallely this application is also updated with new features And every time when a new feature added/updated/removed/bug fixed, the version of the application is updated and deployed with the version number. This application is a .war file that holds library of JS files. Example: if intial version of the application is app.war, then next version will be app1_0.war.
In order to pickup the changes/updates, other applications using this app has to be updated with the latest version. That is manually go and search in all files where "app" is reffered and replace it with app1_0. ofcourse application need to be tested thoroughly to see if new version did not break any functionality.
The war filename is updated with new version name inorder to support earlier versions.
Are there any guidelines/procedures to handle such scenario?.
Saritha, I prefer using the same file name for each version. It's annoying to pull in a library and then have to update a bunch of my paths to accomodate it. You can include a version.txt file in the war so people know what version they are on.
ofcourse application need to be tested thoroughly to see if new version did not break any functionality.
Thank you Jeanne, Even I like to have same name for different versions. I don't like changing my code just to change paths.
But yesterday evening I learned that they would deploy this application in a sperate box and based on the url, apache would redirect this url to that box. This box will contain different versions of the same app. Hence they have to rename .war file with version number to support different versions.
I such scenario, can you think of any better approach to this problem?
Originally posted by Saritha ventrapragada: Yes, WAR is deployed separately. It is not distributed with other ears.
Right. So the other applications, need to refer to a different URL, not rebuild their application with a different WAR name. This makes things easier. The applications can store the URL path in a property file. Then they just have to update this property file when they want to point to a newer version of the WAR.