통합 테스트에는 스프링 부트를 사용하고 REST URL에는 RESTEasy를 사용합니다. 나쁜 요청을 보낼 때 throw 된 예외에 대한 테스트 케이스를 추가 했으므로 BadRequestException에 대한 ExceptionMapper를 구성했습니다. 결과적으로 throw 된 RESTEasy 예외를 억제하기 위해 RESTEasy의 ExceptionMapper를 확장하는 BadRequestExceptionHandler를 추가했습니다. '@SpringBootApplication'을 사용하고 있었지만 includeFilters에 유형을 ANNOTATION으로 설정하고 Provider.class에 값을 설정하여 '@ComponentScan'을 추가했습니다. 내 처리기 클래스를 @Component로 표시 했으므로 Spring이 bean (autowiring worked)을 만들 수 있지만 RESTEasy가이 핸들러를 선택하지 않고 로그에서 예외를 계속 볼 수 있습니다.RESTEasy ExceptionMapper가 스프링 부트와 함께 작동하지 않음
누군가 내가 잘못하고있는 것을 지적 할 수 있습니까?
@Provider
@Component
public class BadRequestExceptionHandler implements ExceptionMapper<BadRequestException> {
@Override
public Response toResponse(BadRequestException exception) {
return Response.status(Response.Status.BAD_REQUEST)
.entity(exception.getMessage())
.build();
}
}
@SpringBootApplication
@ComponentScan(includeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, value = Provider.class))
public class TestApplication extends SpringBootServletInitializer {
...
}
감사합니다,
패디 내가 정의 JaxRs 응용 프로그램 클래스를 사용하여 서버 내장 된 사용자 정의 물러 사용 된