Show Table of Contents
12.4. Versioning
Explicit URIs
You might want to expose all available versions of each Web service and Web application at a different URI. For example, consider the case where you change your URI template to the following:
/version/{version}{contextPath}/
If you have
1.0 and 1.1 versions of a profile that packages Web services or Web applications, you can now access the different versions using version-specific URIs. For example, if you are running version 1.0 and version 1.1 implementations of the example-quickstarts-rest profile, you can access either one through the following URIs:
- Version 1.0 through http://localhost:9000/version/1.0/cxf/crm/customerservice/customers/123
- Version 1.1 through http://localhost:9000/version/1.1/cxf/crm/customerservice/customers/123
Both versions are available to the gateway, provided you include the version information in the URI.
Rolling upgrades
Another approach to dealing with versions of Web services and Web applications is to expose only a single version at a time of each Web service or Web application in a single gateway. This is the default configuration.
For example, if you deploy a
1.0 version of the gateway-http profile and run a few services, you will see all 1.0 versions of them. If you run some 1.1 versions of these services, the gateway will not see them. If you now do a rolling upgrade of your gateway to version 1.1, it will switch to showing only the 1.1 versions of the services.
Alternatively, you can specify the exact profile version to use, on the mapping configuration screen.
Another approach you can use with Web applications is to specify the maven coordinates and maven version of a web application in the ZooKeeper path.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.