使用JAXB实现REST-Webservice时,我们有多个方法产生输出。包含所有这些方法的类带有注释
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
。如果请求成功(没有出错),在我们的方法中返回POJO对象,而JAXB动态地将这些对象编组为application/xml
或application/json
,正如客户端通过请求头中的Accept: application/xxx;
请求的那样。我的问题是如何获取所需的内容类型,因为如果出现错误,我们会抛出一个WebApplicationException
,其中包含一个响应,该响应应包含自定义错误消息格式化为所请求的内容类型。