在HTTP以外的资源上映射自定义操作通过JAX-RS(Jersey)提供REST

时间:2014-04-14 18:22:56

标签: java web-services rest jersey jersey-2.0

我现在提供一个通过JAX-WS与JAX-RS(泽西岛)公开的公共服务。

给定服务对类似于HTTP,Create,Find,Update中的项目进行操作。这些可以映射到GETPOSTPUT。但我确实对修改,本地化等项目进行了操作。

项目始终由系统生成的ID和修订版本组成。

第一个很容易实现:

GET /items/{type}/{id}/{revision} -- revision is optional
PUT /items/{type}/{id}/{revision} -- updates the content of a revision
POST /items/{type} -- creates a completely new item

如何映射修改,本地化而不破坏REST的语义? 我习惯使用Spring的@RequestMapping header值,并认为我可以使用PUT执行以下操作。

PUT /items/{type}/{id}/{revision}
Sub-Method: (REVISE, LOCALIZE, etc.)

这不是泽西的可能,但我甚至不知道这是不是一个好方法。

建议高度推荐。

编辑:PUT修改与上述方法的幂等性相矛盾。

0 个答案:

没有答案