我开发了一个简单的RESTful WS,其中包含一些方法,例如,如果资源可用或参数为空,这些方法将响应不同的HTTP状态代码。
从源代码的角度来看,我发送自己的状态代码没有问题,或者结果只是200 ok。
例如,一种方法的两个可能的返回语句:
return Response.status(460).entity("Key not found").build();
或
return Response.ok(text,MediaType.TEXT_HTML).build();
当我查看生成的WADL文件时,可能响应的条目仅定义为以下
<method name="DELETE" id="aMethod">
<response><representation mediaType="text/html"/>
</response>
</method>
是否可以使用某种注释或执行其他变通方法来指示WADL生成器生成如下条目?
<response status="201">
[...]
</response>
并且通常具有例如参数的多个响应。
<response status="201">
<param name="location" style="header" type="xsd:anyURI" required="true">
<link resource_type="#entry" rel="self"/>
</param>
<representation href="#entry"/>
</response>
有人知道如何将这类信息集成到使用Jersey/JAX-RS生成WADL文件中吗?
您需要为代码创建一个@Provider块。
它在这里看起来有很好的记录6.6-泽西岛用户指南
参见示例6.6