0

我正在使用带有 Spring Boot 的 Vaadin 7.6.3。我正在尝试使用PopupButton附加组件(但我认为问题不是特定于附加组件)。

我将附加组件添加为 gradle 的依赖项。这是创建 PopupButton 的代码:

PopupButton btn = new PopupButton("Test Button");
btn.setContent(new Label("Test"));
layout.addComponent(btn);

通过 Gradle 的 Vaadin 插件,我运行了在和 vaadinCompile中创建文件src/main/resources/addon/client/ListaideWidgetset.gwt.xml和多个文件的任务。我还添加到我的 UI 中。我确认小部件集是通过客户端模式使用的。src/main/webapp/VAADIN/gwt-unitCachesrc/main/webapp/VAADIN/widgetsets/addon.client.ListaideWidgetset@Widgetset("addon.client.ListaideWidgetset")?debug

内容ListaideWidgetset.gwt.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Vaadin//DTD Vaadin 7//EN" "https://raw.github.com/vaadin/gwt/master/distro-source/core/src/gwt-module.dtd">
<!-- WS Compiler: manually edited -->
<module>
        <inherits name="com.vaadin.DefaultWidgetSet" />
        <set-configuration-property name="devModeRedirectEnabled" value="true" />
        <set-property name="user.agent" value="ie8,ie9,gecko1_8,safari,ie10" />
        <source path="client" />
        <source path="shared" />
        <collapse-all-properties />
        <set-property name="compiler.useSymbolMaps" value="true" />
</module>

问题是在客户端上,该按钮显示为标准按钮(没有 V 形),并且在单击时不会打开弹出窗口。

4

1 回答 1

1

您的小部件集不包含插件。请参阅示例

 <inherits name="org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset" />

添加后,重新编译小部件集,重新启动您的应用程序。

通常 gradle 插件可以为您处理这个问题,但是可以禁用该功能,或者其他一些配置错误可能会阻止它。很难说没有build.gradle...

编辑

gradle vaadin 插件似乎无法正确处理此插件。作为一种解决方法,禁用小部件集的自动管理,这会阻止gwt.xml. 请参阅https://github.com/johndevs/gradle-vaadin-plugin/wiki/Tasks-and-configuration-DSLmanageWidgetset。例如添加你的-block。vaadinCompile.manageWidgetset = falsevaadin{}

于 2016-07-29T11:01:51.993 回答