【问题标题】:ATG REST API - How to send different HTTP status code rather than 500ATG REST API - 如何发送不同的 HTTP 状态码而不是 500
【发布时间】:2018-05-15 17:39:19
【问题描述】:

我正在公开一个 REST 服务,在该服务中我试图根据错误类型返回不同的 HTTP 状态代码。

不幸的是,我设法发送的唯一错误状态是 500。

我尝试了以下方法,但似乎不起作用。

throw new RestException(e.getMessage(), ServletUtil.getCurrentResponse().getResponse(), 404);

有什么想法吗?

提前谢谢你。

【问题讨论】:

    标签: rest atg oracle-commerce


    【解决方案1】:

    对于 ATG 11.3,您有不同类型的 RESTful Web 服务:

    JAX-RS

    如果您使用的是 JAX-RS Web 服务,请按照说明进行操作 here

    此外,API Documentation 声明如下:

    请注意,所有 RestExceptions 都要求提供 servlet 响应状态代码,以便适当地设置响应对象的状态。错误代码必须是来自 HttpServletResponse 对象的 http 状态代码

    另外请注意,有两个 RestException 类,一个是 atg.rest.RestException,另一个是 atg.service.jaxrs.RestException 所以请确保您已导入正确的。

    REST MVC

    如果您使用的是 REST MVC(我猜您是),请按照说明进行操作 here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-25
      • 1970-01-01
      • 2014-08-09
      • 2014-09-22
      • 2017-04-29
      • 1970-01-01
      • 2015-09-03
      相关资源
      最近更新 更多