Я пытаюсь получить тело запроса в JAX-RS ExceptionMapper. Вот мой код:
@Provider @Componenet
public class BaseExceptionMapper implements ExceptionMapper<Exception> {
@Context private HttpServletRequest request;
@Override
public Response toResponse(Exception ex) {
// Trying to retrieve request body for logging throws an error
String requestBody = IOUtils.toString(request.getInputStream());
}
}
Итак, моя дилемма: я не могу получить тело запроса для ведения журнала, потому что API сервлета не позволит вам вызывать request.getInputStream()/request.getReader() более одного раза для запроса (и JAX-RS явно называя его для разбора запроса). Кто-нибудь знает, есть ли способ сделать то, что я пытаюсь сделать?