You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@synapse.apache.org by ja...@nokia.com on 2009/11/24 11:21:42 UTC

Synapse 1.3: REST help (PUT/DELETE)

Hi All,

We're looking at using Apache Synapse as a mocking framework for some REST services.

>From looking at JIRA, it seems that the PUT/DELETE methods are now supported in the 1.3 branch, which I have checked out and built.

Does anybody have any experience using these new methods, or are few people using them as yet? It's just that it is unclear how the configuration language would support them, and the documentation and examples have not yet been updated in this branch (understandable so of course).

Any guidance would be appreciated.

Regards,

--
James Carnegie
Nokia UK Limited

RE: Synapse 1.3: REST help (PUT/DELETE)

Posted by ja...@nokia.com.
Hi Asankha,

> > We're looking at using Apache Synapse as a mocking framework for some
> REST services.
> >
> > >From looking at JIRA, it seems that the PUT/DELETE methods are now
> supported in the 1.3 branch, which I have checked out and built.
> >
> > Does anybody have any experience using these new methods, or are few
> people using them as yet? It's just that it is unclear how the
> configuration language would support them, and the documentation and
> examples have not yet been updated in this branch (understandable so of
> course).
> >
> > Any guidance would be appreciated.
> >
> The support implemented gives the ability to Synapse to mediate REST
> service calls. I am not sure I fully understand your expectations as a
> mocking framework.. if you could share a sample use-case I can easily
> let you know if its possible, and how. If you need to share any
> confidential code/samples, you could mail them directly to me

Thanks for the quick reply. We're looking at using Synapse to mock RESTful services; that is, to simulate real services to help with Continuous Integration of consumers of these services when they are down, changing etc. So similar to what IBM are doing here:

http://www.ibm.com/developerworks/edu/ws-dw-ws-synapse.html

but with REST/POX only. The services we wish to simulate make heavy use of HTTP stuff, such as PUT/DELETE, common headers, HTTP basic authentication, and the like. 

So in general, out solution would have to consume HTTP requests (POST/GET/PUT/DELETE), and if appropriate, return an XML response based on transformations of the request headers, request data and perhaps files and other data sources etc. The XML requests/responses are defined by XML schemata, without the use of WADL.

Do you think Synapse 1.3 (given aside that it's unreleased), would be able to handle this task? If not, how far is our use case away from what Synapse REST support is heading? If so, I would consider it a _major_ selling point (as it were) for Synapse since we have found nothing, either commercial or otherwise, that does REST mocking/simulation. The SOAPUI folk have some rudimentary REST mocking support, but they only support returning canned responses from static files. They do have some plans in this area I am told however.

If Synapse is not far from what we need, is there any scope for us to contribute (in some way) to help this along?

Kind regards,

James.

Re: Synapse 1.3: REST help (PUT/DELETE)

Posted by "Asankha C. Perera" <as...@apache.org>.
Hi James
> We're looking at using Apache Synapse as a mocking framework for some REST services.
>
> >From looking at JIRA, it seems that the PUT/DELETE methods are now supported in the 1.3 branch, which I have checked out and built.
>
> Does anybody have any experience using these new methods, or are few people using them as yet? It's just that it is unclear how the configuration language would support them, and the documentation and examples have not yet been updated in this branch (understandable so of course).
>
> Any guidance would be appreciated.
>   
The support implemented gives the ability to Synapse to mediate REST
service calls. I am not sure I fully understand your expectations as a
mocking framework.. if you could share a sample use-case I can easily
let you know if its possible, and how. If you need to share any
confidential code/samples, you could mail them directly to me

cheers
asankha

-- 
Asankha C. Perera
AdroitLogic, http://adroitlogic.org

http://esbmagic.blogspot.com