Versioning service, especially of the web services, is a topic of heated discussions in many of the forums and sites. Even though there are many approaches to this topic, we cannot often find any concrete guideline or code showing the implementation. This is because the topic is not simple. The term "Versioning" means different things to different people, depending upon the context in which they are speaking. For some, versioning means a way to manage compatible change in the service implementation alone, without any major change in the service description. However, for those who define services for a large corporate enterprise, versioning is a mechanism or tool without which he cannot control the ever increasing complexity of an SOA ecosystem.
The effective use of an ESB infrastructure provides a means to solve the versioning problems and in this chapter we are going to look at the working code in action demonstrating how we can version the web services...