synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul Fremantle" <pzf...@gmail.com>
Subject Re: Synapse proxy service with slashes not working. Ideas for versioning web services at url/endpoint using synapse?
Date Thu, 06 Mar 2008 06:52:13 GMT
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 <ruwan.linton@gmail.com> 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 <bouck.dev@gmail.com> 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
paul@wso2.com

"Oxygenating the Web Service Platform", www.wso2.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Mime
View raw message