Using addons: Spring Boot + Vaadin 8

Hi there,

I don’t get the Vaadin ContextMenu addon running.
Can you please help me to figure out what I’m still missing?

The error (while right clicking):

Error performing server to client RPC calls
java.lang.IllegalStateException: There is no information about com.vaadin.contextmenu.client.ContextMenuClientRpc.showContextMenu. Did you remember to compile the right widgetset?
 at Unknown.Gg(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.qHd(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.BJb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.DJb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.CJb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.QIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.PIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.uIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.vIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.aGb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.eval(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.Rh(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.Uh(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.eval(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown._f(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)
   at Unknown._invokeFunction(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)
   at Unknown._invokeCallback(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)
   at Unknown._websocket.onmessage(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)
Caused by: com.vaadin.client.metadata.NoDataException: There are no parameter type data for com.vaadin.contextmenu.client.ContextMenuClientRpc.showContextMenu
   at Unknown.Dg(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.epc(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.Tpc(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.BJb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.DJb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.CJb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.QIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.PIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.uIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.vIb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.aGb(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.eval(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.Rh(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.Uh(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown.eval(com.vaadin.DefaultWidgetSet-0.js)
   at Unknown._f(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)
   at Unknown._invokeFunction(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)
   at Unknown._invokeCallback(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)
   at Unknown._websocket.onmessage(http://localhost:8080/xxx/VAADIN/vaadinPush.debug.js?v=8.1.0)

The pom.xml parts:

        <java.version>1.8</java.version>
        <spring.boot.version>1.5.3.RELEASE</spring.boot.version>

        <com.vaadin.version>8.1.0</com.vaadin.version>
        <com.vaadin.context-menu.version>2.0.0</com.vaadin.context-menu.version>
...
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.vaadin</groupId>
                <artifactId>vaadin-bom</artifactId>
                <version>${com.vaadin.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.vaadin</groupId>
                <artifactId>vaadin-context-menu</artifactId>
                <version>${com.vaadin.context-menu.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
...
    <dependencies>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-push</artifactId>
        </dependency>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-themes</artifactId>
        </dependency>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-context-menu</artifactId>
        </dependency>
    </dependencies>
...
            <plugins>
                <plugin>
                    <groupId>com.vaadin</groupId>
                    <artifactId>vaadin-maven-plugin</artifactId>
                    <version>${com.vaadin.version}</version>
                    <configuration>
                        <widgetsetMode>${vaadin.widgetset.mode}</widgetsetMode>
                    </configuration>
                    <executions>
                        <execution>
                            <goals>
                                <goal>resources</goal>
                                <goal>update-widgetset</goal>
                                <goal>compile</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>

I read through several documentations and tried many things out, but I didn’t find a solution which is working.
What is the minimal thing I still need to do, to get this addon running?

Best regards,
Sebastian

P.S.: The mvn clean install part:

[INFO]
 --- vaadin-maven-plugin:8.1.0:update-widgetset (default) @ xxx ---
Error parsing jar file: file:/...xxx/target/classes
Widgetsets found from classpath:
com.vaadin.contextmenu.WidgetSet in file:/.../.m2/repository/com/vaadin/vaadin-context-menu/2.0.0/vaadin-context-menu-2.0.0.jar
Search took 148ms
[INFO]
 1 addons found.
log4j:WARN No appenders could be found for logger (org.jboss.resteasy.plugins.providers.DocumentProvider).
log4j:WARN Please initialize the log4j system properly.
[INFO]
 Widgetset config created to /...xxx/target/generated-sources/wscdn/AppWidgetset.java. Public URL: "https://ws.vaadin.com/.../....nocache.js"

[INFO]
 --- vaadin-maven-plugin:8.1.0:resources (default) @ xxx ---
[WARNING]
 GWT plugin is configured to detect modules, but none were found.

[INFO]
 --- vaadin-maven-plugin:8.1.0:compile (default) @ xxx ---
[INFO]
 GWT compilation is skipped

Nevermind. I don’t know why it didn’t work, but now it works perfectly with the setup posted above.
Maybe there was some kind of caching problem or similar.

Best regards,
Sebastian

P.S.: Just for the protocol: I also didn’t create any “.gwt.xml” file and didn’t use any “@Widgetset” in my application. It works per default without. I was always building with “mvn clean install”.