I decided on web service versioning using endpoints. It be done easily by specifying a custom XFire controller. I've updated the Wiki:
http://xfire.codehaus.org/Versioning Scroll down to "Endpoint Pattern by specifying a Custom XFire Servlet Controller" The complete example can be seen at: http://arsenalist.com/2007/03/01/web-service-versioning-with-endpoints-using-xfire/ Thanks, Zarar Matthew Good wrote: > > I have a version number in the namespace of the wsdl and the schema. The > service name remains the same. This results in a bunch of new methods to > implement but the majority of those will just call the old methods. Or > the old methods are changed to call the new methods with default values > for new parameters. I mainly want to maintain backwards comptibility > forever whenever possible. > > The new wsdl replaces the old one so new client development or changes to > old clients will most likely result in the client being upgraded to the > latest version. If you are generating wsdl based on code then I guess > this won't work too well. > > ----- Original Message ---- > From: Zarar Siddiqi <[EMAIL PROTECTED]> > To: [email protected] > Sent: Wednesday, February 21, 2007 9:09:43 AM > Subject: [xfire-user] Web Service Versioning > > > I just want to get a feel for what kind of solutions people are using to > counter this problem. If I'm running a web service, say ShoppingService, > and I want to release a newer version of ShoppingService which would break > any clients that were using the older version of the service, what's the > best way of run both services at the same time? Until the older service > is > phased out, I'd like to run both services simultaneously. > > Some obvious solutions are to rename the services based on version number, > SportsService1, SportsService2 etc. You could inherit SportsService2 from > SportsService1 and override the methods that have changed. This would > solve > the problem but it's messy. I came across this article at IBM Developer > Works which suggests using namespaces: > > http://www-128.ibm.com/developerworks/webservices/library/ws-version/ > > This approach is basically the same as having SportsService1 and > SportsService2 as you still need to maintain two different versions of the > service classes. I know this is a tough problem to solve and there isn't > a > magical solution. I'm just wondering how others are handling this > problem. > > Your thoughts are appreciated. > -- > View this message in context: > http://www.nabble.com/Web-Service-Versioning-tf3267630.html#a9083686 > Sent from the XFire - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe from this list please visit: > > http://xircles.codehaus.org/manage_email > > > > > > --------------------------------------------------------------------- > To unsubscribe from this list please visit: > > http://xircles.codehaus.org/manage_email > > > -- View this message in context: http://www.nabble.com/Web-Service-Versioning-tf3267630.html#a9257851 Sent from the XFire - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email
