Plugin Configuration

When we add dependency to Vaadin plugin into BuildConfig.groovy and run gradle quick-start or gradle quick-start-spring the plugin generates the following files inside our Grails application.

  • MyUI.groovy - main Vaadin UI file

  • VaadinConfig.groovy - is main configuration file for Vaadin application

And removes URL mapping from UrlMapping.groovy.


Vaadin configuration file grails-app/conf/VaadinConfig.groovy contains all the configuration that is required by the plugin.

We will explore what all can be configured in VaadinConfig.groovy.


We need to define extra mapping in case we need to 'reserve' a URL that should not be mapped to, for example, /* by Vaadin.

For example, we need to enable console plugin. First we add plugin dependency compile ":console:1.4.4" into BuildConfig.groovy.

Then we provide mapping for /console/* pattern.

mappingExtras = [

To get console plugin working, you need to apply this hack.


When production mode is set to false, it enables debug mode. So, we can easily inspect application in browser by adding ?debug to the end of URL.

By default, the productionMode is set to false also inside Grails.

productionMode = false

In order to enable productionMode in production, make sure the following code is present.

environments {
production {
vaadin {
productionMode = true


Set this property to true to enable asynchronous communication, so you can use Vaadin push.

asyncSupported = true


You can provide name of the themes, which is a directory name in web-app/VAADIN/themes folder.

themes = ['sample']


You can specify exact version of Vaadin for SASS compilation.

sassCompile = '7.6.1'


In order to use your own widget set, for example, if you need to use add-ons.

widgetset = 'com.mycompany.widgetset'

If widgetset is not set, the default widget set from Vaadin is used.


There is a default servlet, com.vaadin.grails.server.DefaultServlet, provided by Vaadin plugin that makes actually possible to run Vaadin inside Grails.

If you need to create your own servlet, you can do it by extending com.vaadin.grails.server.DefaultServlet. Then set servletClass to your custom servlet.

servletClass = ""


We can define a package name where Spring will search for components.

packages = ['com.mycompany.vaadin']

This is optional, all packages will get scanned by default.


We can create own implementation of com.vaadin.server.UIProvider.

uiProvider = "com.mycompany.MyGrailsAwareUIProvider"

This is optional, default is com.vaadin.grails.server.DefaultUIProvider.


In order to activate Open Session in View for Hibernate 3.

openSessionInViewFilter = ''

Or this for Hibernate 4.

openSessionInViewFilter = ''