Well, it depends on how you look at it. Indeed, the purist would modify and enforce the HTTP verbs, but I think that a RESTful approach (instead of pure REST) is much more practical. The HTTP verbs are too limited and I think that for a pure web service both GET and POST should be accepted. Using the submission name as an alternative works really well, one of the benefits this has is that you can rely on RIFE's behavioral inheritance to chain submissions in one request (first authenticate and then perform an action). RESTful web services like this are intended to be called from inside an application and not to be present as accessible HTML links inside a web page, which is why the distinction between GET and POST to enforce idempotency is a bit moot. You can just as easily craft a GET request as a POST request inside your application. Also, as Emmanuel rightfully says, this approach has the benefit of making it easy to quickly call RESTful web services by simply typing the commands in the browser location bar.

To create RESTful web services in RIFE, all you need to do is replace the HTML templates with XML templates that contain the structures you want to return. This is what I did with Bla-bla List and it could indeed be easily done with RIFE/Crud. If you do this, it would be a great contribution.

Take care,

Geert

On 07 Feb 2007, at 22:01, Christian Vest Hansen wrote:

Hmm... it's lacking in some respects, if you want to go purist.

Take this URL from the wiki:

http://blablalist.com/createlist?
   submission=credentials&
   login=johnsmith&
   password=password&
   submission=create&
   name=Things+I+need+to+do+today

That looks like a HTTP GET to me, in which case, it is missing on a
key point of REST: the HTTP verbs.

Instead, it should have been a POST to this URL (for instance):

http://blablalist.com/lists/Things+I+need+to+do+today/

With this XML document in the POST payload:

<list>
   <credentials>
       <login>johnsmith</login>
       <password>password</password>
   </credentials>
</list>

This is the kind of thing that I thought would be nice if it could be
auto generated based on meta data :)

Some extra info: http://www.xfront.com/REST-Web-Services.html


2007/2/7, Emmanuel Okyere <[EMAIL PROTECTED]>:
Christian,

Have you seen blabla list? this is a link to it's REST API:
http://rifers.org/wiki/display/BLA/REST+API

You don't have to do anything special to return XML over HTTP; just
set your templates to describe the xml structs you want to return with
value placeholders for the dynamic bits, just as you would for an
xhtml output. Download the blabla code. Should help more.

HTH

Cheers,
Emmanuel

On 2/7/07, Christian Vest Hansen <[EMAIL PROTECTED]> wrote:
> Hi,
>
> There aren't any special support for REST style web services in RIFE, are there? > At my company, they've gone web service crazy, and as a developer I'm
> finding myself in the middle of it all.
> I noticed that many of the services that I create are nothing more
> than simple crud operations - this fits rather nicely with a REST
> architecture.
> And then it hit me; if I'm not mistaken, RIFE/Crud can generate fully > functional websites based on just the entity beans and the meta data > classes, to support precisely that I'm coding by hand these days, the
> only difference being that I'm writing web services, and RIFE/Crud
> generates web sites with HMTL and all that. So, if I can generate
> entier web sites, then I ought to be able to generate some web
> services too, boasting the same exact functionality.
>
> If this isn't already in there, how hard do you think it would be to add?
>
>
> --
> Venlig hilsen / Kind regards,
> Christian Vest Hansen.
> _______________________________________________
> Rife-users mailing list
> Rife-users@uwyn.com
> http://lists.uwyn.com/mailman/listinfo/rife-users
>


--
blog -- http://eokyere.blogspot.com
RIFE Framework -- http://rifers.org
RIFE Training      -- http://rifers.org/training

Mohandas Gandhi - "You must be the change you wish to see in the world."
_______________________________________________
Rife-users mailing list
Rife-users@uwyn.com
http://lists.uwyn.com/mailman/listinfo/rife-users



--
Venlig hilsen / Kind regards,
Christian Vest Hansen.
_______________________________________________
Rife-users mailing list
Rife-users@uwyn.com
http://lists.uwyn.com/mailman/listinfo/rife-users


--
Geert Bevin
Uwyn "Use what you need" - http://uwyn.com
RIFE Java application framework - http://rifers.org
Music and words - http://gbevin.com


_______________________________________________
Rife-users mailing list
Rife-users@uwyn.com
http://lists.uwyn.com/mailman/listinfo/rife-users

Reply via email to