GWT-Tutorial StockWatcher, не использующий новый HTML-файл - PullRequest
0 голосов
/ 20 января 2012

В настоящее время я работаю через StockWatcher-Tutorial на странице GWT и дошёл до Шаг 3. Создайте пользовательский интерфейс. Я изменил содержимое размещенной HTML-страницы, как сказано, и сделалОстальная часть учебника.Но когда я пытаюсь протестировать новую страницу и запустить Выполнить> Отладка как> Веб-приложение , я получаю исключение в onLoad ():

onModuleLoad () выдает исключение Исключениепри загрузке модуля com.ma.project.client.MaWebAppProject.Для получения дополнительной информации см. Режим разработки.

java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (неизвестный источник) в sun.ormp.Impl.invoke (Неизвестный источник) в java.lang.reflect.Method.invoke (Неизвестный источник) в com.google.gwt.dev.shell.ModuleSpace.onLoad (ModuleSpace.java:396) в com.google.gwt.dev.shell.OophmSessionHandler.loadModule (OophmSessionHandler.java:200) при com.google.gwt.dev.shell.BrowserChannelServer.processConnection (BrowserChannelServer.java:525) в com.google.gwt.dev.shell.BrowserChannelServer.run (BrowserChannelServer.java: 363) в java.lang.Thread.run (неизвестный источник). Вызывается: java.lang.NullPointerException в com.ma.project.client.MaWebAppProject.onModuleLoad (MaWebAppProject.java:41) ... еще 9

и вкладка «Режим разработки» в Eclipse говорит:

[ОШИБКА] [mawebappproject] - Невозможно загрузить класс точки входа модуля com.ma.project.client.MaWebAppProject (подробности см. в связанном исключении)

До сих пор я обнаружил, что изменения, внесенные в HTML-файл, не распознаются сервером разработки.хотя я сохранил файл и все.Я пытался использовать GWT Compile Project , но безрезультатно.Кажется, что Java-код дает сбой, потому что он не может найти , который используется в качестве RootPanel.

У кого-нибудь есть идея?

ОБНОВЛЕНИЕ: После некоторого следа иошибка, которую я обнаружил, я должен был обновить страницу один раз в браузере после сообщения об ошибке.Это сработало.Я до сих пор не знаю, почему это произошло, но пока это не повторилось ...

Ответы [ 2 ]

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

Возможно, вы заменили весь HTML-файл файлом со страницы.это может вызвать проблему, потому что на странице он использует имя вашего проекта, которое, конечно, не stockwatcher, но, по-видимому, что-то вроде этого: com.ma.project.client.MaWebAppProject (предположил).

Я предлагаю вам восстановить только последнее рабочее состояние и заменить только строки, помеченные желтым, тогда оно должно работать.

Другая причина может заключаться в том, что вы не использовали RootPanel.get("stockList") или дал другое имя идентификатору div (это: <div id="stockList"></div>).Эти два имени должны быть идентичными (и, конечно, поле id уникальным), потому что метод get RootPanel ищет поле с этим идентификатором и помещает в него виджет.(кстати: RootPanel.get() без параметров, он использует элемент body, так что вы также можете попробовать это).

Ну, это все возможности прямо сейчас ^^

0 голосов
/ 13 февраля 2016

Я думаю, у меня была именно эта проблема. Моя проблема закончилась тем, что слово «stocklist» было в нижнем регистре в html id, например, так:

<div id="stocklist"></div>

но был верблюд в коде java, где биржевой список связан с главной панелью:

RootPanel.get("stockList").add(mainPanel);

Конечно, было решение сделать так, чтобы одно совпадало с другим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...