What is DefaultWidgetSet?

I’m new to Vaadin. I’m using a modified version of Jetty as the embedded web server, which don’t use webapp/. All resources are packaged in a Jar instead of War. My application will start and configure servlets programatically rather than by web.xml. Well, everything seem fine in Vaadin 6.8.8.

I had followed the tutorial and had written a Hello World application using Vaadin 6.8.8 and succeeded. However, after migrated to Vaadin 7.0.0.rc2, it won’t run anymore:

INFO: Requested resource 

[/VAADIN/widgetsets/com.vaadin.DefaultWidgetSet/com.vaadin.DefaultWidgetSet.nocache.js] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder.

I had read the doc about how to use Vaadin in existing Maven project, it seems the problem is related to GWT? (I don’t know about GWT, and I’m not going to learn it anyway)

  <!-- Compiles your custom GWT components with the GWT compiler -->
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>gwt-maven-plugin</artifactId>
    <!-- Version 2.1.0-1 works at least with Vaadin 6.5 -->
        <version>2.1.0-1</version>
        <configuration>
            <!-- if you don't specify any modules, the plugin will find them -->
            <!--modules>
                ..
            </modules-->
            <webappDirectory>${project.build.directory}/${project.build.finalName}/VAADIN/widgetsets</webappDirectory>
            <extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs>
            <runTarget>clean</runTarget>
            <hostedWebapp>${project.build.directory}/${project.build.finalName}</hostedWebapp>
            <noServer>true</noServer>
            <port>8080</port>
            <soyc>false</soyc>
        </configuration>

It seems I need to use this gwt-maven-plugin in my Maven project?

However, the number is dynamically allocated, so I can’t fill an actual number here. The servlet context name is also randomly generated. So, take the addressbook project for example, the Vaadin servlet is accessed at: http://localhost:32154/ctx3136/VAADIN/… (The servlet is mapped to “/*”)

Simply say, can I just get rid of gwt-maven-plugin? I’m not going to write any custom widget anyway.

Here is my pom:

    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-server</artifactId>
        <version>7.0.0.rc2</version>
    </dependency>
    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-themes</artifactId>
        <version>7.0.0.rc2</version>
    </dependency>

Resolved. Just added the vaadin-client-compiled dependency.

I finally got this dependency by: download all the 7.0.0.rc2 jars from the central Maven repo, extract them to a local dir, and run:

find -iname '*widgetset*'

Eventually, the path “VAADIN/widgetsets/…” is appeared in the package vaadin-client-compiled.

However, in the doc related to Maven projects, “vaadin-server is everything you need at server side” seems misleading. Look me, without vaadin-client-compiled, you can’t run a simple “Hello world”!

Thank you for noticing this problem with the documentation!


https://vaadin.com/wiki/-/wiki/Main/Creating+a+Maven+project
has now been updated to mention the artifacts that are needed in addition to vaadin-server when deploying an application.

Have same problem:
INFO: Requested resource
[/VAADIN/widgetsets/ua.dbproject.tt.tt.MyAppWidgetset/ua.dbproject.tt.tt.MyAppWidgetset.nocache.js] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder.

It’s strange becouse it began to appear on the 6th vide of the tutorial, and even if i try to import current or release version from GIT - problem stays.

TKS@Jilei Xie