【问题标题】:GWT client umbrellaexception get full error message in javaGWT客户端伞形异常在java中获得完整的错误消息
【发布时间】:2012-06-14 08:02:15
【问题描述】:

我目前正在使用 GWT,但我发现几乎不可能在 Chrome 控制台中找到当前错误消息的错误。在本地开发模式下和在 GAE 上托管应用程序时都会出现错误。如何获得实际的 java 错误?它在哪里说我得到了哪条线和什么异常?顺便说一句,我正在寻找的错误是什么?

提前致谢!

【问题讨论】:

    标签: debugging google-app-engine gwt client


    【解决方案1】:

    在 GWT 2.1.1 中出现了 UmbrellaException,它将一组子 Throwable 收集在一起。试试这个:

    public void onModuleLoad() {
      GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() {
        @Override
        public void onUncaughtException(@NotNull Throwable e) {
          ensureNotUmbrellaError(e);
        }
      });
    }
    

    其中ensureNotUmbrellaError定义如下:

    private static void ensureNotUmbrellaError(@NotNull Throwable e) {
      for (Throwable th : ((UmbrellaException) e).getCauses()) {
        if (th instanceof UmbrellaException) {
          ensureNotUmbrellaError(th);
        } else {
          th.printStackTrace();
        }
      }
    }
    

    【讨论】:

    • 很好的答案!我建议使用 th.printStackTrace() 了解更多信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-12
    • 2012-01-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多