Today's browsers (or HTML < 5) only support HTTP GET and POST, but to communicate RESTful one need PUT and DELETE too. If the workaround should not be to use Ajax, something like a hidden form field is required to overwrite the actual HTTP method.
Rails uses the following trick:
<input name="_method" type="hidden" value="put" />
Is there a possibility to do something similar with JAX-RS?
To quote Roy Fielding:
Emphasis is mine, taken from this post http://tech.groups.yahoo.com/group/rest-discuss/message/10746
Not strictly a JAX-RS solution but spring 3.0 comes with a
HiddenHttpMethodFilter
that implements exactly the trick that rails does, defaults to the same_method
parameter.Note that you don't need to be using all of spring to use this filter, you can just configure it in your
web.xml
and ignore the rest of spring.Jersey also has something similar, filtering a header field though. Documentation can be found here