You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by Paul Fremantle <pz...@gmail.com> on 2008/03/06 07:52:13 UTC
Re: Synapse proxy service with slashes not working. Ideas for versioning web services at url/endpoint using synapse?
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 <ru...@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 <bo...@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
Re: Synapse proxy service with slashes not working. Ideas for versioning web services at url/endpoint using synapse?
Posted by J Bouck <bo...@gmail.com>.
I took the liberty in creating SYNAPSE-249 as an enhancement request.
~john
On Thu, Mar 6, 2008 at 10:37 AM, Paul Fremantle <pz...@gmail.com> wrote:
> Asankha
>
> I was hoping you would say that :)
>
> Paul
>
>
>
> On Thu, Mar 6, 2008 at 1:45 PM, Asankha C. Perera <as...@wso2.com> wrote:
> >
> > Actually I am quite sure we can do this using the nhttp transport - for
> > example with the JMS, VFS or email transports etc, we allow the user to
> > specify any address over that transport for a service, and as long as we are
> > out of a WAR container, we can do the same..
> >
> > But, I know for a fact that some users have used the WAR / Servlet
> > transport deployment in production, and in this scenario, the choice is
> > obviously limited, or not possible at all..
> >
> > I am ok to have a JIRA for this enhancement for consideration..
> >
> > asankha
> >
> >
> >
> > Ruwan Linton wrote:
> > 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 <pz...@gmail.com> 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 <ru...@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 <bo...@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
> >
> >
> >
> >
> >
> >
>
>
>
> --
>
>
> 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
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org
Re: Synapse proxy service with slashes not working. Ideas for versioning web services at url/endpoint using synapse?
Posted by Paul Fremantle <pz...@gmail.com>.
Asankha
I was hoping you would say that :)
Paul
On Thu, Mar 6, 2008 at 1:45 PM, Asankha C. Perera <as...@wso2.com> wrote:
>
> Actually I am quite sure we can do this using the nhttp transport - for
> example with the JMS, VFS or email transports etc, we allow the user to
> specify any address over that transport for a service, and as long as we are
> out of a WAR container, we can do the same..
>
> But, I know for a fact that some users have used the WAR / Servlet
> transport deployment in production, and in this scenario, the choice is
> obviously limited, or not possible at all..
>
> I am ok to have a JIRA for this enhancement for consideration..
>
> asankha
>
>
>
> Ruwan Linton wrote:
> 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 <pz...@gmail.com> 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 <ru...@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 <bo...@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
>
>
>
>
>
>
--
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
Re: Synapse proxy service with slashes not working. Ideas for versioning
web services at url/endpoint using synapse?
Posted by "Asankha C. Perera" <as...@wso2.com>.
Actually I am quite sure we can do this using the nhttp transport - for
example with the JMS, VFS or email transports etc, we allow the user to
specify any address over that transport for a service, and as long as we
are out of a WAR container, we can do the same..
But, I know for a fact that some users have used the WAR / Servlet
transport deployment in production, and in this scenario, the choice is
obviously limited, or not possible at all..
I am ok to have a JIRA for this enhancement for consideration..
asankha
Ruwan Linton wrote:
> 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 <pz...@gmail.com> 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 <ru...@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 <bo...@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
>>
>>
>>
>
>
>
Re: Synapse proxy service with slashes not working. Ideas for versioning
web services at url/endpoint using synapse?
Posted by "Asankha C. Perera" <as...@wso2.com>.
Actually I am quite sure we can do this using the nhttp transport - for
example with the JMS, VFS or email transports etc, we allow the user to
specify any address over that transport for a service, and as long as we
are out of a WAR container, we can do the same..
But, I know for a fact that some users have used the WAR / Servlet
transport deployment in production, and in this scenario, the choice is
obviously limited, or not possible at all..
I am ok to have a JIRA for this enhancement for consideration..
asankha
Ruwan Linton wrote:
> 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 <pz...@gmail.com> 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 <ru...@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 <bo...@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
>>
>>
>>
>
>
>
Re: Synapse proxy service with slashes not working. Ideas for versioning web services at url/endpoint using synapse?
Posted by Ruwan Linton <ru...@gmail.com>.
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 <pz...@gmail.com> 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 <ru...@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 <bo...@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
>
>
--
Ruwan Linton
http://www.wso2.org - "Oxygenating the Web Services Platform"
Re: Synapse proxy service with slashes not working. Ideas for versioning web services at url/endpoint using synapse?
Posted by Ruwan Linton <ru...@gmail.com>.
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 <pz...@gmail.com> 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 <ru...@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 <bo...@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
>
>
--
Ruwan Linton
http://www.wso2.org - "Oxygenating the Web Services Platform"