0

最近,我花了 8 个小时调试我的 JSF 代码。失败的原因是 a ClassNotFoundException,它既没有出现在控制台输出中,也没有出现在日志文件中。

在普通的 Java 应用程序中,我可以Thread.setDefaultUnhandledExceptionHandler(...)用来记录未捕获的异常。但这对我的 JSF 应用程序没有帮助。

如何在 JSF 应用程序中实现未捕获的运行时异常的日志记录(理想情况下 - 记录文件和控制台,最低限度 - 到标准错误)?

更新:

  • JSF 应用程序项目app引用(包含 Maven 依赖项)项目logiccommons版本 1。
  • commons项目版本 2 包含一个类X
  • commons项目版本 1 不包含 class X
  • logiccommons项目需要并包含对版本 2的依赖项。
  • ClassNotFoundException发生在课堂上X

这个测试用例可以重现问题:

@Test
public void test() {
    try {
        EntryPageController objectUnderTest = new EntryPageController();
        objectUnderTest.init();
        objectUnderTest.resetButtonAction();
        objectUnderTest.simulateYearButtonAction();
    } catch (Throwable exception) {
        LOGGER.error("", exception);
        Assert.fail(exception.getMessage());
    }
}

EntryPageControllerJSF在哪里ManagedBean

4

0 回答 0