как войти Spring RuntimeException - PullRequest
       28

как войти Spring RuntimeException

1 голос
/ 26 марта 2011

У меня проблемы с регистрацией исключений RuntimeException из моего сервиса Spring.

Моя конфигурация:

jars (Maven):

  • Я исключил ведение журнала общих пользователей
  • У меня есть log4j и sl4j на пути к классам

web.xml:

<context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>classpath:log4j.properties</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>

log4j.properties:

log4j.rootLogger=INFO, infrastructure

log4j.appender.infrastructure=org.apache.log4j.FileAppender
log4j.appender.infrastructure.File=/opt/logs/infrastructure.log
log4j.appender.infrastructure.layout=org.apache.log4j.PatternLayout
log4j.appender.infrastructure.layout.ConversionPattern=%d{HH:mm:ss} (%t) %-5p [%c] - %m%n

и в методе обслуживания:

throw new IllegalStateException();

Я должен упомянуть, что я использую Spring MVC.Версия Spring - 3.0.5.Tomcat 7.0.11 в качестве веб-сервера.

Моя цель - зарегистрировать исключение IllegalStateException, как и любое другое обычное исключение - для моего приложения-регистратора.Я искал способ зарегистрировать глобальный UncaughtExceptionHandler, но не смог найти ни одного, поэтому я предполагаю, что мои исключения во время выполнения не регистрируются.Вместо этого они выводятся на стандартный выход.

Как мне это исправить?Любая помощь приветствуется.

Евгений.

1 Ответ

0 голосов
/ 26 марта 2011

Использовать HandlerExceptionResolver .

См. Справочник Spring MVC по Обработка исключений .

...