1

我正在从 Vaadin 6 迁移到 Vaadin 7。
在将 Vaadin 6 的 Refresher 更改为 Vaadin 7 的 Refresher 之后,似乎我应该将 addComponent(refresher) 更改为 addExtension(refresher)。但不幸的是,当我这样做时,我收到了一个空页面而不是我的组件。有人可以帮忙吗?我不完全明白我应该做什么..

4

2 回答 2

2

这是我使用的示例代码:

public class RefresherDemo extends UI  {
    Refresher refresher;
    Label timeLabel;    

    protected void init(VaadinRequest request) {
        final VerticalLayout layout = new VerticalLayout();
        layout.setMargin(true);
        setContent(layout);

        timeLabel = new Label(getTime());

        refresher = new Refresher();
        refresher.setRefreshInterval(500);
        refresher.addListener(new RefreshListener(){
            @Override
            public void refresh(Refresher source) {
                timeLabel.setValue(getTime());
            }
        });
        addExtension(refresher);        

        layout.addComponent(timeLabel);

    }

    public String getTime(){
        DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
        Date date = new Date();
        String d = dateFormat.format(date);
        return d;
    }

}
于 2013-03-01T14:38:32.863 回答
1

我有同样的问题,我发现了如何解决它。我不知道自定义小部件集。有必要像这样添加对 web.xml 的引用:

<init-param>
    <param-name>widgetset</param-name>
    <param-value>com.mypackage.AppWidgetSet</param-value>
</init-param>

希望能帮助某人

于 2013-07-11T11:38:20.497 回答