Guilherme has written an interesting and thought-provoking post on the RESTEasy framework, comparing it to his own Restfulie framework. Overall I think the theme of his analysis is accurate: RESTEasy doesn’t provide support for hypermedia out of the box, and that means it’s anything but RESTful.
But I don’t believe this is RESTEasy’s fault. In fact in the bizzaro-world that RESTEasy inhabits, I imagine it to be an exemplary citizen. Caught between the enterprise and the JCP, what choice would a sensible Java vendor have, other than to follow (and influence) the appropriate JSR? So it’s not RESTEasy (or Jersey, or CXF) that are at fault here, but the committee-driven process where folks with different goals and levels of understanding about REST have convened to drive out a lowest common denominator called JAX-RS (a poor name since at best JAX-RS provides a programmatic layer over a Web server).
So I won’t put the boot in to RESTEasy (or its brethren). They are what they are, and it’s too late now to worry about it. What Guilherme has shown though is just how fast and powerful innovation can be when it’s freed from committee constraints, and left in the hands of folks who are knowledgeable about the domain and passionate about their community. Restfulie (for both Ruby and Java) may well be early in their development, but they’ve already eclipsed JAX-RS (and WCF too) in terms of trying to provide support for RESTful services by embracing hypermedia.
I hope Guilherme will be offered a seat on the JSR for JAX-RS 2.0 so that it can earn the “R” in its acronym. And if a mature Ruby version of Restfulie makes it into Rails at some point, that would be nice too.