Paul, Your suggestion is very cool, but doesn't it require some modifications to axis2 as well. I think the URL based dispatcher and the AxisService has to be changed to support this. Am I wrong or missing something?
Anyway +1 for this improvement. Thanks, Ruwan On Thu, Mar 6, 2008 at 12:22 PM, Paul Fremantle <[EMAIL PROTECTED]> wrote: > I think we need to improve Synapse (and Axis2) to support this model. > > Paul > > PS In fact, I'd really like to see Synapse allow exact URLs to be > specified: > > for example > > <proxy name="blah> > <url="http://server.com/myurl/2008-09-09/service"> > ... > > </proxy> > > On Wed, Mar 5, 2008 at 6:26 PM, Ruwan Linton <[EMAIL PROTECTED]> > wrote: > > Hi john, > > > > This is expected, even though Synapse proxy services lets you create a > proxy > > with the '/' character, it is a special character for the URL based > > dispatching because it breaks the splits the String representation of > the > > URL from the '/' character to find the service. Due to the presence of > the > > '/' in the name of the service, URL based dispatcher will not be able > to > > dispatch this because it only sees the version number as the service > name > > after the splitting. > > > > Workaround for this is either to eliminate the '/' character and use > some > > other character instead or send the version as a parameter, for example > > > > http://synserv/soap/2007-10-10/MyService ==> > > http://synserv/soap/2007-10-10_MyService< > http://synserv/soap/2007-10-10/MyService> > > or > > http://synserv/soap/2007-10-10/MyService ==> > > http://synserv/soap/MyService?<http://synserv/soap/2007-10-10/MyService > > > > version=2007-10-10 <http://synserv/soap/2007-10-10/MyService> > > > > Even here for the second case you will have to use a router inside the > > mediation to decide the correct service, but this approach is more > towards > > the HTTP semantics. > > > > Will it be possible for you to use one of these strategies? > > > > Thanks, > > Ruwan > > > > > > > > > > On Wed, Mar 5, 2008 at 11:28 PM, J Bouck <[EMAIL PROTECTED]> wrote: > > > > > I would like to use synapse to make available several versions of a > > > web service available at the same time in the same synapse server. > It > > > would seem to me that a logical way to version the web services is by > > > date of deployment. I would like to define synapse to have proxies > > > defined like: > > > http://synserv/soap/2007-10-10/MyService -> version 1 of the service > > > http://synserv/soap/2008-01-10/MyService -> version 2 of the service > > > http://synserv/soap/2008-03-05/MyService -> version 3 of the service > > > I know that I could do content-based versioning > > > (http://wso2.org/library/2611), but I feel that versioning at the > > > url/endpoint is the simpler solution. Synapse 1.1.1 will let you > > > define a proxy service called "2008-03-05/MyService", but at > run-time > > > and discovery it does nothing but Accept (202) or redirect (302) you > > > to the http://synserv/soap location. It seems like a bug to me. > > > Synapse or Axis2 doesn't seem to like services with a slash (/) in > > > them like: > > > <proxy name="2008-03-05/StockQuoteProxy" transports="https"> > > > <target inSequence="inbound" outSequence="outbound" > > > faultSequence="textfault"/> > > > <publishWSDL > > > > > > > uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/> > > > </proxy> > > > > > > Any suggestions on a url-based versioning scheme that can be done > with > > > synapse configuration? > > > > > > ~john > > > > > > > > > > > -- > > Ruwan Linton > > http://www.wso2.org - "Oxygenating the Web Services Platform" > > > > > > -- > Paul Fremantle > Co-Founder and VP of Technical Sales, WSO2 > Apache Synapse PMC Chair > OASIS WS-RX TC Co-chair > > blog: http://pzf.fremantle.org > [EMAIL PROTECTED] > > "Oxygenating the Web Service Platform", www.wso2.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Ruwan Linton http://www.wso2.org - "Oxygenating the Web Services Platform"
