I’ve been banging my head against the wall for the last three hours on this one, so I’m hoping someone here can help.
When my app starts and I try to access the home page (this is a very simple page with a few vert and horizontal layouts
I get the following java script error:
com.vaadin.client.ApplicationConfiguration
SEVERE: Default implementation of createWidget() does not work for UIConnector. This might be caused by explicitely using super.createWidget() or some unspecified problem with the widgetset compilation.java.lang.IllegalStateException: Default implementation of createWidget() does not work for UIConnector. This might be caused by explicitely using super.createWidget() or some unspecified problem with the widgetset compilation.
at Unknown.Hg(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Lg(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Rg(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.uFd(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.kRb(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Tbd(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Ayb(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Zxb(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Ti(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Li(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Xi(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Ri(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.oi(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.ri(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.eval(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.d(au.org.scoutmaster.AppWidgetSet-0.js)
Caused by: com.vaadin.client.metadata.NoDataException: There is no return type for com.vaadin.client.ui.ui.UIConnector.getWidget
at Unknown.Hg(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Og(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Kgc(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Ahc(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.kRb(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Tbd(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Ayb(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Zxb(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Ti(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Li(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Xi(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.Ri(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.oi(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.ri(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.eval(au.org.scoutmaster.AppWidgetSet-0.js)
at Unknown.d(au.org.scoutmaster.AppWidgetSet-0.js)
Odb @ au.org.scoutmaster.AppWidgetSet-0.js:2741
zeb @ au.org.scoutmaster.AppWidgetSet-0.js:2522
yeb @ au.org.scoutmaster.AppWidgetSet-0.js:1947
YSd @ au.org.scoutmaster.AppWidgetSet-0.js:911
fyb @ au.org.scoutmaster.AppWidgetSet-0.js:2742
vi @ au.org.scoutmaster.AppWidgetSet-0.js:1959
Ti @ au.org.scoutmaster.AppWidgetSet-0.js:2349
Li @ au.org.scoutmaster.AppWidgetSet-0.js:1930
Xi @ au.org.scoutmaster.AppWidgetSet-0.js:2739
Ri @ au.org.scoutmaster.AppWidgetSet-0.js:468
oi @ au.org.scoutmaster.AppWidgetSet-0.js:1199
ri @ au.org.scoutmaster.AppWidgetSet-0.js:2369
(anonymous function) @ au.org.scoutmaster.AppWidgetSet-0.js:2193
d @ au.org.scoutmaster.AppWidgetSet-0.js:2137
So I’ve just removed all of the ‘custom’ widgets from AppWidgetSet.xml as such:
<module>
<!-- This file is automatically updated based on new dependencies by the
goal "vaadin:update-widgetset". -->
<!-- Inherit DefaultWidgetSet -->
<inherits name="com.vaadin.DefaultWidgetSet" />
<!-- SBS: Optimisation recommended by the vaadin client debugger -->
<generate-with class="au.org.scoutmaster.OptimizedConnectorBundleLoaderFactory">
<when-type-assignable
class="com.vaadin.client.metadata.ConnectorBundleLoader" />
</generate-with>
<!-- Uncomment the following to compile the widgetset for one browser only.
This can reduce the GWT compilation time significantly when debugging. The
line should be commented out before deployment to production environments.
Multiple browsers can be specified for GWT 1.7 as a comma separated list.
The supported user agents at the moment of writing were: ie6,ie8,gecko,gecko1_8,safari,opera
The value gecko1_8 is used for Firefox 3 and later and safari is used for
webkit based browsers including Google Chrome. -->
<set-property name="user.agent" value="ie8,gecko1_8,safari" />
<!-- To enable SuperDevMode, uncomment this line. SuperDevMode enables debugging
of the client side of a Vaadin application using the JavaScript debugger
of a browser. Java code is shown and debugging can take place on the Java
level when using a browser that support source maps (currently Chrome, implementation
under work for Firefox). After uncommenting this property, compile the widgetset
once and then start the SuperDevMode server process in parallel with your
normal server. Then add the command line parameter ?superdevmode to your
application URL. Vaadin Eclipse plug-in can create a launch for the SuperDevMode
server (Project Properties... -> Vaadin). See https://vaadin.com/wiki/-/wiki/Main/Using%20SuperDevMode
for more information and instructions. -->
<set-configuration-property name="devModeRedirectEnabled"
value="true" />
<!--
<inherits name="fi.jasoft.dragdroplayouts.DragDropLayoutsWidgetSet" />
<inherits name="com.vaadin.addon.calendar.gwt.CalendarWidgetset" />
<inherits name="org.vaadin.openesignforms.ckeditor.widgetset.VaadinCKEditorWidgetset" />
<inherits name="org.vaadin.easyuploads.Widgetset" />
<inherits name="org.vaadin.aceeditor.AceEditorWidgetSet" />
<inherits name="org.vaadin.tokenfield.TokenfieldWidgetset" />
<inherits name="org.vaadin.peter.buttongroup.ButtonGroupWidgetset" />
<inherits name="org.vaadin.johan.Toolbox7Widgetset" />
<inherits name="org.vaadin.peter.contextmenu.ContextmenuWidgetset"/>
took this out.
-->
</module>
So its a pretty basic appwidget set.
I was running 7.6.0 when the error started (after trying to a clean build) and upgrading to 7.6.1 didn’t help.
The problem occured when I deleted my ‘target’ directory as well as the gwt-unitCache and widgetsets and did a clean build.
I’ve tried re-compiling the widgetset and the java code multiple times as well as cleaning the eclipse project.
My pom.xml is as follows:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.scoutmaster</groupId>
<artifactId>scoutmaster</artifactId>
<version>1.3</version>
<packaging>war</packaging>
<name>Scoutmaster Web Application</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<vaadin.version>7.6.1</vaadin.version>
<liquibase.version>3.4.2</liquibase.version>
<vaadin.plugin.version>${vaadin.version}</vaadin.plugin.version>
<jasperreports.version>6.2.0</jasperreports.version>
<eclipselink.version>2.5.1</eclipselink.version>
</properties>
<repositories>
<repository>
<id>vaadin-addons</id>
<url>http://maven.vaadin.com/vaadin-addons</url>
</repository>
<repository>
<id>vaadin-snapshots</id>
<url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>EclipseLink Repo</id>
<url>http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/rt/eclipselink/maven.repo</url>
</repository>
<repository>
<id>vaadin-prereleases</id>
<name>Vaadin Pre-releases</name>
<url>https://maven.vaadin.com/vaadin-prereleases</url>
</repository>
<!-- temporary repo until the dragdrop layout does a formal release for
7.6 -->
<!-- Works around https://github.com/johndevs/dragdroplayouts/issues/42 -->
<repository>
<id>dragdroplayouts</id>
<name>dragdroplayouts</name>
<url>http://mvn.jasoft.fi/maven2-snapshots/</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>vaadin-snapshots</id>
<url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-server</artifactId>
<version>${vaadin.version}</version>
</dependency>
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-client-compiled</artifactId>
<version>${vaadin.version}</version>
</dependency>
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-push</artifactId>
<version>${vaadin.version}</version>
</dependency>
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-themes</artifactId>
<version>${vaadin.version}</version>
</dependency>
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-client-compiler</artifactId>
<version>${vaadin.version}</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jetty-annotations</artifactId>
<groupId>org.eclipse.jetty</groupId>
</exclusion>
<exclusion>
<artifactId>jetty-plus</artifactId>
<groupId>org.eclipse.jetty</groupId>
</exclusion>
<exclusion>
<artifactId>jetty-webapp</artifactId>
<groupId>org.eclipse.jetty</groupId>
</exclusion>
<exclusion>
<artifactId>jetty-servlets</artifactId>
<groupId>org.eclipse.jetty</groupId>
</exclusion>
<exclusion>
<artifactId>jetty-util</artifactId>
<groupId>org.eclipse.jetty</groupId>
</exclusion>
<exclusion>
<artifactId>vaadin-client</artifactId>
<groupId>com.vaadin</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-shared</artifactId>
<version>${vaadin.version}</version>
</dependency>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.15.0-GA</version>
</dependency>
<dependency>
<groupId>net.sf.opencsv</groupId>
<artifactId>opencsv</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>fi.jasoft</groupId>
<artifactId>dragdroplayouts</artifactId>
<version>1.2-SNAPSHOT</version>
</dependency>
<!--
work around until 1.2 is released to vaadon addon directory.
<dependency>
<groupId>org.vaadin.addons</groupId>
<artifactId>dragdroplayouts</artifactId>
<version>1.1.3</version>
</dependency>
-->
<dependency>
<groupId>org.joda</groupId>
<artifactId>joda-money</artifactId>
<version>0.8</version>
</dependency>
<dependency>
<groupId>com.vaadin.addon</groupId>
<artifactId>vaadin-calendar</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.vaadin.addons</groupId>
<artifactId>buttongroup</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>${eclipselink.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-core</artifactId>
<version>${liquibase.version}</version>
</dependency>
<dependency>
<groupId>org.pojomatic</groupId>
<artifactId>pojomatic</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.vaadin.addon</groupId>
<artifactId>confirmdialog</artifactId>
<version>2.0.4</version>
</dependency>
<dependency>
<artifactId>commons-lang</artifactId>
<groupId>commons-lang</groupId>
<version>2.6</version>
</dependency>
<dependency>
<groupId>org.marre.smsj</groupId>
<artifactId>org.marre.smsj</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>au.com.vaadinutils</groupId>
<artifactId>VaadinUtils</artifactId>
<version>0.1.2</version>
<exclusions>
<exclusion>
<artifactId>stax</artifactId>
<groupId>stax</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.vaadin.addons</groupId>
<artifactId>tableexport</artifactId>
<version>1.4.0</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.8</version>
</dependency>
<dependency>
<groupId>org.vaadin.addons</groupId>
<artifactId>ckeditor-wrapper-for-vaadin</artifactId>
<version>7.9.0</version>
</dependency>
<dependency>
<groupId>org.vaadin.addon</groupId>
<artifactId>easyuploads</artifactId>
<version>7.2.2</version>
</dependency>
<dependency>
<groupId>org.vaadin.hezamu.rx</groupId>
<artifactId>rxvaadin</artifactId>
<version>0.0.5</version>
</dependency>
<!-- dependency> <groupId>com.vaadin.addon</groupId> <artifactId>vaadin-touchkit-agpl</artifactId>
<version>4.0.0.alpha1</version> </dependency -->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.0-rc1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.0-rc1</version>
</dependency>
<!-- used to suppress warnings -->
<dependency>
<groupId>net.sourceforge.findbugs</groupId>
<artifactId>annotations</artifactId>
<version>1.3.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.commonjava.googlecode.markdown4j</groupId>
<artifactId>markdown4j</artifactId>
<version>2.2-cj-1.0</version>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.jpa.modelgen.processor</artifactId>
<version>2.5.2-M1</version>
<scope>compile</scope>
</dependency>
<!-- Used to add the compiler to the class path so we can compile jasper
reports at run time. -->
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>core</artifactId>
<version>3.1.1</version>
</dependency>
<dependency>
<groupId>org.simpleframework</groupId>
<artifactId>simple-xml</artifactId>
<version>2.7</version>
<exclusions>
<exclusion>
<artifactId>stax-api</artifactId>
<groupId>stax</groupId>
</exclusion>
<exclusion>
<artifactId>stax</artifactId>
<groupId>stax</groupId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<version>3.1</version>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgs>
<arg>-Aeclipselink.persistencexml=src/main/resources/META-INF/persistence.xml</arg>
<verbose />
</compilerArgs>
</configuration>
</plugin>
<!-- As we are doing "inplace" GWT compilation, ensure the widgetset -->
<!-- directory is cleaned properly -->
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.4.1</version>
<configuration>
<filesets>
<fileset>
<directory>src/main/webapp/VAADIN/widgetsets</directory>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-maven-plugin</artifactId>
<version>${vaadin.version}</version>
<configuration>
<extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs>
<!-- <runTarget>mobilemail</runTarget> -->
<!-- We are doing "inplace" but into subdir VAADIN/widgetsets. This
way is compatible with Vaadin eclipse plugin. -->
<webappDirectory>${basedir}/src/main/webapp/VAADIN/widgetsets
</webappDirectory>
<hostedWebapp>${basedir}/src/main/webapp/VAADIN/widgetsets
</hostedWebapp>
<noServer>true</noServer>
<!-- Remove draftCompile when project is ready -->
<draftCompile>false</draftCompile>
<compileReport>true</compileReport>
<style>OBF</style>
<strict>true</strict>
<runTarget>http://localhost:8080/</runTarget>
</configuration>
<executions>
<execution>
<configuration>
<!-- if you don't specify any modules, the plugin will find them -->
<!-- <modules> <module>com.vaadin.demo.mobilemail.gwt.ColorPickerWidgetSet</module>
</modules> -->
</configuration>
<!-- Use vaadin:compile to compile the widgetset -->
<goals>
<goal>resources</goal>
<goal>update-widgetset</goal>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
</plugin>
<!-- plugin> <groupId>org.liquibase</groupId> <artifactId>liquibase-maven-plugin</artifactId>
<version>${liquibase.version}</version> <configuration> <outputChangeLogFile>src/main/resources/liquibase/db.changelog-update.xml</outputChangeLogFile>
<driver>com.mysql.jdbc.Driver</driver> <url>jdbc:mysql://localhost/scoutmaster?sessionVariables=storage_engine=InnoDB</url>
<username>scoutmaster</username> <password>master$4scout</password> </configuration>
<executions> <execution> <phase>test</phase> <goals> <goal>update</goal>
<goal>updateSQL</goal> </goals> </execution> </executions> </plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<includes>
<include>**/AllTest.java</include>
</includes>
</configuration>
</plugin>
<!-- plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jasperreports-maven-plugin</artifactId>
<version>1.0-beta-2</version> <executions> <execution> <goals> <goal>compile-reports</goal>
</goals> </execution> </executions> <dependencies -->
<!--note this must be repeated here to pick up correct xml validation -->
<!-- dependency> <groupId>net.sf.jasperreports</groupId> <artifactId>jasperreports</artifactId>
<version>${jasperreports.version}</version> </dependency> </dependencies>
</plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<reportOutputDirectory>/home/bsutton/git/scoutmaster.wiki/target/build</reportOutputDirectory>
<destDir>javadoc</destDir>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>com.vaadin</groupId>
<artifactId>
vaadin-maven-plugin
</artifactId>
<versionRange>
[7.1.10,)
</versionRange>
<goals>
<goal>resources</goal>
<goal>update-widgetset</goal>
<goal>compile</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-maven-plugin</artifactId>
<versionRange>
[${liquibase.version},)
</versionRange>
<goals>
<goal>update</goal>
<goal>migrate</goal>
<goal>migrateSQL</goal>
<goal>updateSQL</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<!-- pluginExecution> <pluginExecutionFilter> <groupId> org.codehaus.mojo
</groupId> <artifactId> jasperreports-maven-plugin </artifactId> <versionRange>
[1.0-beta-2,) </versionRange> <goals> <goal>compile-reports</goal> </goals>
</pluginExecutionFilter> <action> <ignore></ignore> </action> </pluginExecution -->
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.bsc.maven</groupId>
<artifactId>
maven-processor-plugin
</artifactId>
<versionRange>
[2.2.4,)
</versionRange>
<goals>
<goal>process</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
The entire code base is on github at:
https://github.com/bsutton/scoutmaster
Any suggestions as to where to start looking would be greatly appreciated.