我目前有一个运行 Jersey 的 RESTful 网络服务。我最近添加了一个过滤器来做一些认证工作,它适用于快乐路径的情况。但是,当我需要从这个过滤器中抛出一个错误时,而不是将异常序列化为一个漂亮的 json 字符串,它会抛出一个 500 并出现以下错误:
javax.ws.rs.WebApplicationException: com.sun.jersey.api.MessageException: A message
body writer for Java class myclass, and Java type class myclass, and MIME media type
application/octet-stream was not found
问题是,我不想向 application/octet-stream 写任何东西。我的服务只使用application/json
. Resource
这在我的实际课程中不是问题,我可以在其中指定@Produces
注释。从资源主体抛出的错误响应将正确序列化。
那么,我的问题是:如何控制过滤时抛出的异常使用什么 MIME 类型?