0

我在拦截器中添加了一个授权模块,并尝试使用异常映射器抛出 401 状态码,但即使它正在扫描我的异常映射器,它也没有在运行时使用它。

@Component
public class ExceptionMapper implements javax.ws.rs.ext.ExceptionMapper<Exception> {
    public ExceptionMapper() {
        System.out.println("true Manish= " + true);
    }
@Override
public Response toResponse(Exception exception) {
    System.out.println("product Manish Exception comning here");
    return Response.status(Response.Status.EXPECTATION_FAILED).
            entity(exception.getMessage()).
            type("text/plain").
            build();
}
}

因此,它正在打印 true Manish=true,但是当我的拦截器抛出异常时,它不会命中 toResponse() 方法

4

1 回答 1

0

目前 MSF4J 无法映射从拦截器级别抛出的异常。它只能映射实际服务中抛出的异常。我们希望将其增强为拥有全局异常映射器。为此创建了https://github.com/wso2/msf4j/issues/327 。

于 2017-01-19T01:31:28.277 回答