Почему мои виджеты GWT и XML-код ничего не печатают на сайте? - PullRequest
0 голосов
/ 22 апреля 2019

Я пишу простой код GWT, используя виджеты и XML.Код отформатирован в одной вложенной иерархии.


Класс Demo является точкой входа:

public class Demo4 implements EntryPoint {
    public void onModuleLoad() {
        UserDashBoard user = new UserDashBoard();
        RootPanel.get().add(user);
    }
}

Запас класса и погода класса являются обычными виджетами:

public class Stock extends Composite{
    @UiField Button stocks;

    public Stock() {
        initWidget(stocks);
    }

    @UiHandler("stocks")
    void handleClick(ClickEvent e) {
        Window.alert("The price of stocks is xxx");
    } 
}


public class Weather extends Composite{
    @UiField Button weather;

    public Weather() {
        initWidget(weather);
    }

    @UiHandler("weather")
    void handleClick(ClickEvent e) {
        Window.alert("Weather is xxx");
    } 
}

Я создал класс UserDashBoard как один виджет Home, который содержит все остальные виджеты, а также связывает его с файлом XML.

public class UserDashBoard extends Composite{
    private static final UserDashBoardUiBinder uiBinder = 
    GWT.create(UserDashBoardUiBinder.class);

    @UiTemplate("UserDashBoardUiBinder.ui.xml")
    interface UserDashBoardUiBinder extends UiBinder<Widget, UserDashBoard> {}

    public UserDashBoard() {
        initWidget(uiBinder.createAndBindUi(this));
    }
}

<!-- UserDashboard.ui.xml -->
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
  xmlns:g='urn:import:com.google.gwt.user.client.ui'
  xmlns:my='urn:import:come.my.app.client' >
  <g:HTMLPanel>
    <my:Weather ui:field="weather"/>
    <my:Stock ui:field="stocks"/>
  </g:HTMLPanel>
</ui:UiBinder>

Основная проблема заключается в том, что когда я запускаю проект,Я ожидал две кнопки, но не нашел ни одной на сайте, кто-нибудь знает, что здесь происходит не так?На самом деле я изучаю GWT через документацию GWT, забавно, что документация GWT содержит много объяснений UiBinder, но не опубликовала ни одного полного примера кода проекта, что меня смущает фактической структурой кода.

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