您可以使用以下配置再试一次:
<servlet> <servlet-name>API</servlet-name> <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> ... <init-param> <param-name>jersey.config.server.response.setStatusOverSendError</param-name> <param-value>true</param-value> </init-param></servlet>
此标志定义在发送4xx或5xx响应状态时,Jersey是否使用
ServletResponse.sendError(标志为
false)还是
ServletResponse.setStatus(标志为
true)。
调用
ServletResponse.sendError通常会重置响应实体和标头,并返回状态文本的(text / html)错误页面。
由于您要返回自己的自定义错误实体,因此需要将此标志设置为
true。



