【发布时间】:2015-01-21 14:39:49
【问题描述】:
我使用spring @RestController 提供REST 网络服务。
一般无效的参数内容应该如何处理?我尝试抛出一个自定义异常,但这会导致客户端出现HTTP 500 错误,从而暴露堆栈跟踪。
这可能不是正确的方法。但是应该如何只返回简单的错误消息呢? (webservice不会被用户手动访问。只是由连接到rest控制器的其他服务)。
【问题讨论】:
-
如何使用 javax.validation 和 Hibernate Validator 实现?它应该工作得很好。有关示例,请参阅此博客文章:captechconsulting.com/blog/jens-alm/…
-
问题不在于如何验证参数。问题是如何创建一个简单但有用的错误消息,而不是将堆栈跟踪扔回客户端。
-
好吧,如果 javax.validation 抛出异常,那么您有很多信息可以通过简单的 JSON 响应呈现给用户。 Spring 中的 ExceptionMappers 应该足以创建您需要的内容 (journaldev.com/2651/…)。
标签: java spring web-services rest