У меня есть несколько модулей веб-приложений с одинаковым groupId, развернутых на wildfly 18 , скажем, org.foo.ecommerce
Эти модули настроены с собственной подгруппой , поэтому:
- module1 - org.foo.ecommerce.mod1
- module2 - org.foo.ecommerce.mod2
- module3 - org.foo.ecommerce.mod3
Итак, я настроил wildfly с обработчиком для каждого модуля, например:
<periodic-rotating-file-handler name="MOD1_HANDLER">
<level name="DEBUG"/>
<encoding value="UTF-8"/>
<formatter>
<pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] - %s%E%n"/>
</formatter>
<file relative-to="log.path" path="mod1.log"/>
<suffix value=".yyyy-MM-dd"/>
</periodic-rotating-file-handler>
<logger category="org.foo.ecommerce.mod1" use-parent-handlers="false">
<handlers>
<handler name="MOD1_HANDLER"/>
</handlers>
</logger>
Теперь, если по какой-то причине возникает исключение NullPointerException, я могу найти его ТОЛЬКО в wildfly server.log.
Как можно Я отображаю все исключения в модуле, принадлежащем от?
ОБНОВЛЕНИЕ
Это трассировка стека в console / server.log
org.jboss.resteasy.spi.UnhandledException: java.lang.NullPointerException
at org.jboss.resteasy.resteasy-jaxrs@3.9.1.Final//org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:82)
at org.jboss.resteasy.resteasy-jaxrs@3.9.1.Final//org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:346)
at org.jboss.resteasy.resteasy-jaxrs@3.9.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:193)
at org.jboss.resteasy.resteasy-jaxrs@3.9.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:456)
at org.jboss.resteasy.resteasy-jaxrs@3.9.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:229)
at org.jboss.resteasy.resteasy-jaxrs@3.9.1.Final//org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:135)
at org.jboss.resteasy.resteasy-
Уведомление что даже если я объявлю собственное исключение, поведение останется прежним
@javax.ejb.ApplicationException(rollback = true)
public class ApplicationException extends RuntimeException {
}