GWT Режим продукта AssertionException Catch?КАК? - PullRequest
2 голосов
/ 06 января 2012

в режиме продукта в GWT утверждение недоступно, что хорошо, но из-за ошибки GXT я получаю ошибку подтверждения, и поскольку необходимые классы недоступны, все, что я получаю, это com.google.gwt.core.client Ошибка .JavaScriptException в браузере, и ее недостаточно для ее правильной отладки. Причина, по которой мне это нужно, заключается в том, что в своей пользовательской среде я создал класс, который отвечает за обработку ошибок

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

            public void addError(Throwable ex)
            {
                if(!ex.getClass().equals(AssertionError.class))//(ex instanceof AssertionError))
                {
                    this.addError(ex, true);
                }
            }

Как вы можете видеть, я пытался зафиксировать ошибку, но не смог в производственном режиме. Мне как-то нужно иметь возможность отделить исключение, чтобы я мог его отфильтровать. Все ошибки попадают в журналы, и я не хочу, чтобы эти ошибки появлялись там

Ошибка GXT => http://www.sencha.com/forum/showthread.php?171409-RowEditor-AssertionError&p=709005

спасибо, помогите

По яйцу

1 Ответ

1 голос
/ 07 января 2012

Вам необходимо включить утверждения в скомпилированном коде, и это делается очень похоже на то, как вы делали бы это в стандартном jvm, используя флаг -ea.Вместо того, чтобы передавать это в jvm, его нужно передать классу компилятора (или поместить в аргументы программы при запуске из eclipse или другого инструмента).

См. http://code.google.com/webtoolkit/doc/latest/DevGuideCompilingAndDebugging.html#DevGuideCompilerOptionsсписок всех аргументов, которые вы можете передать компилятору

...