There are plenty of how-to's describing the conventions used by Grails Controllers, so I'm not going into that again. As I mentioned earlier, Grails Controllers can be a lot more useful than just displaying web pages. With a little bit of extra plumbing, that same controller that is providing CRUD to HTML pages can be generating JSON or XML to a caller as well.
REST uses the verbs built right into HTTP as the way to define an action to take upon the destination resource, as denoted in the URI. The Grails conventions fit very nicely into the way humans think of REST, and with a combination of UrlMappings and the "withFormat" command, you can easily extend a Grails Controller to accommodate non-HTML formats. We'll get into it after the jump.