Add-ons, Integrations and Tools
There is a Maven Plugin available for Vaadin 14. The plugin handles transpilation, minification and bundling of the front-end resources for the production version of the application. This is only necessary when you take the application into production, or want to test it with IE11.
By default there are no custom widgetsets or Sass themes that need compilation for development time in Vaadin 14. The plugin is thus not needed during development, except when testing with IE11.
Besides the project bases that you can find at vaadin.com/hello-world-starters, there is also a
vaadin-archetype-application available for you to get your project started.
Using Vaadin with Spring
Vaadin 14 has an integration for using it with Spring.
The concept is mostly the same, but some features like the
@ViewScope have been removed.
Also there is currently no specific Spring Security support, although it can still be integrated manually.
The Bakery App Starter for Vaadin Flow and Spring shows an example of this.
There is a CDI Add-on for easier CDI integration and to help using other Java EE features.
In Vaadin 8, Designer was used to edit declarative files with a
.html suffix. Despite the file format suffix, the declarative format was a generic XML syntax that mapped directly into a tree of Vaadin components on the server side. The XML was read by Vaadin at runtime on the server, and was never sent to the client. It’s important to note that the syntax only allowed component declarations.
Some features of Designer are not available for all Vaadin versions. See the Release Notes for an overview of the feature-level differences.
Migrating from Vaadin 8 Designs
As the underlying technology has been completely changed, Vaadin 8 designs are not compatible with Vaadin 14 applications.
There are two paths to migration; either use Multiplatform Runtime (available through Prime or Enterprise subscription) to run a Vaadin 8 application inside a Vaadin 14 application,
or migrate the HTML files manually. When migrating manually, the declarative component tree should be copied inside the
<template> in a blank Vaadin 14 design,
and then modified to fit the new element API’s.
Vaadin 14 provides access to the same TestBench features that are available for Vaadin 8 but the API has been tweaked in many places to correspond with the changes to the components/elements themselves, as well as the features they offer.
The ElementQuery operation
$ no longer has methods such as
caption() as there is no generic "caption" concept in Vaadin 14. On the other hand, there is instead a generic
attribute(String key, String value) method which can be used to find elements based on any HTML attribute.
The element classes have been moved to a sub package of the component, e.g.
com.vaadin.flow.component.textfield.testbench.TextFieldElement instead of
If any API is missing, there are low level helper methods available such as
TestBenchElement.getProperty(String name) and
Vaadin Charts 6 shares a lot of the Java API from Charts 4 even though the underlying technology has been changed. However, almost all of the styling related Java API has been replaced with an ability to style charts using CSS. See list of breaking changes from Charts 4 to Charts 6.
Vaadin Board for Vaadin 14 contains the same API as Vaadin Board for Vaadin 8 but the API has been adapted to follow Vaadin 14 conventions, e.g.
add(Component… component) instead of
Currently we don’t have a version of Vaadin Spreadsheet for Vaadin 14.