2016-06-29 3 views
0

Я создал класс ExcpetionHandler, который аннотируется с аннотацией @ControllerAdivce, которая отлично работает с использованием сервера eclipse tomcat.Spring ExceptionHandler Logging Not Working

Пока я строю проект и разворачиваю его на tomcat на какой-то машине unix, исключениеHandler не получает triggerd.

Я заметил, что некоторые предупреждения log4j генерируются только на машине unix.

Конфигурируется log4j xml, и все приложения работают.

Только после добавления класса ниже я начинаю получать сообщения ниже log4j.

Любая идея?

@ControllerAdvice 
public class ExceptionController { 

    @ExceptionHandler(RuntimeException.class) 
    public ResponseEntity<ClientErrorMessage> handleRunTimeException(HttpServletRequest request, RuntimeException exception) { 
     ClientErrorMessage message = SOME_MESSAGE 
     return new ResponseEntity<>(message, HttpStatus.INTERNAL_SERVER_ERROR); 
    } 

} 

log4j: WARN Нет appenders не может быть найдено для регистратора (org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver). log4j: WARN Пожалуйста, правильно инициализируйте систему log4j. log4j: WARN См. http://logging.apache.org/log4j/1.2/faq.html#noconfig для получения дополнительной информации.

+0

кажется log4j.XML не в пути к классам приложения – Jens

+0

Это, если не все другие appenders не должны работать, но они работают. –

+0

Где находится файл и как содержание этого файла? – Jens

ответ

0

Выпуск пропускал log4j Appender для пакета весной.

<logger name="org.springframework.web"> 
    <level value="debug"/> 
    <appender-ref ref="CONSOLE"/> 
</logger>