Resteasy可选的Path元素

时间:2012-03-27 08:56:40

标签: java web-services rest resteasy

是否可以使用RestEasy的Path注释来获取以下字符串:

/items.json

我在考虑这样的事情:/items {(。。)?format},其中格式可以是json,xml等。

然后我会有一个带有类似参数的方法:@PathParam("format") String format

感谢。

2 个答案:

答案 0 :(得分:1)

我设法使用我的用例进行了以下工作:item{format:(\.(json|xml))?}

我选择使reg exp限制,以便不必在实际服务方法中处理不支持或无效的格式,但如果更喜欢更通用的方法,我认为代替(json | xml)可以添加\ S +。

答案 1 :(得分:0)

您可能想要创建两个方法,一个用于默认类型,另一个用于可选类型但是,您的逻辑应该有效:

@Path(items.{format})
public Response getItems(@PathParam("format") String format) {

}

@Path(items)
public Response getItems() {
    return getItems("json");
}