Vaadin - QR码:Widgetset' com.vaadin.DefaultWidgetSet'不包含实现

时间:2016-12-15 15:35:27

标签: java vaadin

Eclipse Neon,Vaadin 7.3.6版。 Java 1.8。

我想在页面上显示由Vaadin创建的QR码。所以我在pom.xml中添加依赖

<dependency>
        <groupId>org.vaadin.addons</groupId>
        <artifactId>qrcode</artifactId>
        <version>2.0.1</version>
    </dependency>

在我在Vaadin的代码中,我使用了这个:

QRCode code = new QRCode();
    code.setValue("The quick brown fox jumps over the lazy dog");
    code.setWidth("400px");
    code.setHeight("400px");
    addComponent(code);

它的编译成功。但是当我尝试加载带有QR码的html页面时,我得到了下一个错误:

Widgetset&#39; com.vaadin.DefaultWidgetSet&#39;不包含fi.jasoft.qrcode.QRCode的实现。 检查其组件连接器的@Connect映射,widgetsets GWT模块描述文件并重新编译您的widgetset。 如果您下载了vaadin附加软件包,则可能需要参考附加说明。

有什么问题?感谢。

1 个答案:

答案 0 :(得分:0)

您需要为应用程序重新编译widgetset。实际上有一个maven插件。您可以在此处找到有关如何创建&amp; comiple custom wigetset的详细说明:

https://vaadin.com/directory/help/using-vaadin-add-ons/maven

设置一切都有点棘手,但一旦完成,它只是关于运行

mvn vaadin:update-widgetset install 

你必须在pom.xml中添加一些插件才能使其工作,如何找到如何添加插件的最佳方法是为Vaadin应用程序生成官方原型并复制和粘贴来自那里的插件信息:

mvn archetype:generate \
-DarchetypeGroupId=com.vaadin \
-DarchetypeArtifactId=vaadin-archetype-clean \
-DarchetypeVersion=LATEST \
-DgroupId=your.company \
-DartifactId=project-name \
-Dversion=1.0 \
-Dpackaging=war

请注意,如果您使用的是spring-boot,那么将没有web.xml来定义widgetset,但您实际上可以从此论坛关注信息: https://vaadin.com/forum#!/thread/9587133