GWT: gwt-material-addins: MaterialCarousel: Ваш контейнер для карусели еще не инициализирован - PullRequest
0 голосов
/ 07 декабря 2018

Я пытаюсь использовать MaterialCarousel в моем примере проекта, и он выдает ошибку только во время работы.Но компиляция проходит успешно.

Вот версии: Java - 1.8 |GWT - 2.8.11 |MaterialDesign - 2.1.1

Я наследую только:

<inherits name="gwt.material.design.addins.GwtMaterialAddins" />

Вот мой код:

public void onModuleLoad() {
    MaterialCarousel carousel = new MaterialCarousel();
    carousel.add(new Label("sdasdasd"));
    carousel.add(new Label("sdasdasd"));
    RootPanel.get().clear();
    RootPanel.get().add(carousel);
}

У меня есть следующие библиотеки в пути сборки.

gwt-material-2.1.1.jar gwt-material-addins-2.1.1.jar gwt-material-jquery-2.1.1.jar

Ниже приведена ошибка:

19:33:02.571 [ERROR] [gwtcuriositypc] Your carousel container is not yet initialized
java.lang.IllegalStateException: null
    at gwt.material.design.addins.client.carousel.MaterialCarousel.command(MaterialCarousel.java:275)
    at gwt.material.design.addins.client.carousel.MaterialCarousel.add(MaterialCarousel.java:206)
    at org.vadiraj.curiosity.client.GWTCuriosityPC.onModuleLoad(GWTCuriosityPC.java:18)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:423)
    at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200)
    at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:530)
    at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:368)
    at java.lang.Thread.run(Unknown Source)

Может кто-нибудь помочь мне, что происходит?

1 Ответ

0 голосов
/ 06 февраля 2019

Ошибка, которую вы видите в своих журналах в том, что контейнер (карусель) еще не сконструирован, чтобы решить эту проблему:

  • Сначала вы должны создать MaterialCarousel (и добавить его в свою RootPanel)в конструкторе вашего класса / виджета,
  • Далее, в onModuleLoad, добавьте различные метки и панели (работа для меня) Надеюсь, это поможет
...