Vaadin 14.1.0.beta3
Vaadin consists of a set of web components, a Java web framework, configurable themes, tools and a set of app templates.
With every major release, we will change and improve things based on your feedback. This may lead to breaking changes, which will be listed for each part of the platform in the breaking changes section.
Visit vaadin.com to get started.
Support
Vaadin 14 is an LTS (long term support) version, which will be supported for 5 years after the GA (general availability) release. More details of our release model are available on our roadmap page.
Vaadin also provides commercial support and warranty.
New and Noteworthy
Here are the highlighted new and improved features in Vaadin 14. To see the full list of bug fixes and improvements, check Included Projects and Change Log.
Usage statistics
We made adjustments to our analytics to increase the reliability of the data and allow us to better understand product usage for users who are signed in.
npm support
Using Bower for frontend dependencies is currently discouraged (by the author), and npm has become the defacto standard. In Vaadin 14 npm is used as the front-end package manager. Bower (compatibility mode) and WebJars are still fully supported in Vaadin 14. Using npm is the recommended mode in Vaadin 14.
Framework
- Support for npm and ES6 modules
- Support for Polymer 3 templates
- Adding @PreserveOnRefresh on a router layout or route will preserve the user-edited component state when the user refreshes the page by reusing the component instances
- Embedding Flow application is now possible by exporting it as a web component.
- When executing JavaScript from the server-side Java, it is possible to get the return value of the execution to the server-side using Page.executeJs(String expression, Serializable... parameters)
- It is possible to obtain details like screen width & height and time zone on the server-side using Page.retrieveExtendedClientDetails( ExtendedClientDetailsReceiver receiver)
- Simplified styling of application and component with @CssImport
Components
- Grid rows drag and drop
- Grid columns auto-width
- Customise value representation for Grid Pro
- Menubar component added
- App Layout with drawer
- Clear button visibility APIs
- Dropdown select value change without opening
- New theme variants for Notification
Included Projects and Change Log
Vaadin includes the following projects. Release notes with detailed change logs for each project are linked below.
Projects marked as (Pro) are available for users with Pro or Prime subscriptions. Everything else is free and open source.
Components
- Vaadin Accordion (Flow integration 2.0.0, web component v1.0.1)
- Vaadin Button (Flow integration 2.0.1, web component v2.2.1)
- Vaadin Checkbox (Flow integration 2.0.1, web component v2.2.10)
- Checkbox
- Checkbox Group
- Vaadin Combo Box (Flow integration 3.0.6, web component v5.0.9)
- Vaadin Context Menu (Flow integration 3.1.0.beta1, web component v4.3.12)
- Vaadin Date Picker (Flow integration 2.0.5, web component v4.0.5)
- Vaadin Time Picker (Flow integration 2.0.3, web component v2.0.4)
- Vaadin Details (Flow integration 2.0.0, web component v1.0.1)
- Vaadin Dialog (Flow integration 2.0.1, web component v2.2.1)
- Vaadin Select (Flow integration 2.0.2, web component v2.1.6)
- Vaadin Form Layout (Flow integration 2.0.2, web component v2.1.6)
- Vaadin Grid (Flow integration 4.1.0.beta2, web component v5.5.0)
- Grid
- Tree Grid
- Grid Context Menu
- Vaadin Icons (Flow integration 2.0.1, web component v4.3.1)
- Vaadin Item (web component v2.1.1)
- Vaadin List Box (Flow integration 2.1.0.beta2, web component v1.2.0)
- List Box
- Multi Select List Box
- Vaadin Menu Bar (Flow integration 1.0.2, web component v1.0.3)
- Vaadin Notification (Flow integration 2.0.0, web component v1.4.0)
- Vaadin Ordered Layout (Flow integration 2.0.0, web component v1.1.0)
- Horizontal Layout
- Vertical Layout
- Flex Layout
- Vaadin Progress Bar (Flow integration 2.0.2, web component v1.1.2)
- Vaadin Radio Button (Flow integration 2.0.1, web component v1.2.3)
- Radio Button
- Radio Button Group
- Vaadin Split Layout (Flow integration 2.0.3, web component v4.1.1)
- Vaadin Tabs (Flow integration 2.0.4, web component v3.0.5)
- Vaadin Text Field (Flow integration 2.1.0.beta2, web component v2.5.3)
- Text Field
- Text Area
- Password Field
- Big Decimal Field
- Email Field
- Integer Field
- Number Field
- Vaadin Upload (Flow integration 2.1.0.beta1, web component v4.2.2)
- Vaadin Custom Field (Flow integration 3.0.1, web component v1.0.6)
- Vaadin App Layout (Flow integration 2.0.3, web component v2.0.3)
- Vaadin Login (Flow integration 2.0.0, web component v1.0.1)
- Vaadin Board (PRO) (Flow integration 3.0.1, web component v2.1.1)
- Vaadin Charts (PRO) (Flow integration 7.0.2, web component v6.2.4)
- Vaadin Confirm Dialog (PRO) (Flow integration 2.0.2, web component v1.1.5)
- Vaadin Cookie Consent (PRO) (Flow integration 2.0.2, web component v1.1.2)
- Vaadin Crud (PRO) (Flow integration 2.1.0.beta2, web component v1.1.0)
- Vaadin Grid Pro (PRO) (Flow integration 2.0.3, web component v2.0.5)
- Vaadin Rich Text Editor (PRO) (Flow integration 2.1.0, web component v1.1.1)
Themes
Java Web Framework
- Vaadin Flow (2.1.0.rc2)
- Vaadin Spring Addon (12.1.0.beta1)
- Vaadin CDI Addon (11.0.0). You can use the add-on with V10+, see https://github.com/vaadin/cdi#using-with-vaadin-10 for instructions.
- Maven Plugin for Vaadin (14.1.0.beta3)
- Gradle plugin for Flow (1.2)
- Vaadin Multiplatform Runtime (Prime)
Tools
- Vaadin Designer (Pro) (Release notes)
- Vaadin TestBench (Pro) (6.2.0)
Getting Started with Vaadin 14
App starters
The best way to get started with Vaadin 14 is to go to https://vaadin.com/start and pick an app template for the technology stack you’re interested in.
Manually changing Vaadin version for Java projects
Add the following contents to your project pom.xml.
<dependencyManagement>
...
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-bom</artifactId>
<version>14.1.0.beta3</version>
<type>pom</type>
<scope>import</scope>
</dependency>
...
</dependencyManagement>
<repositories>
<repository>
<id>vaadin-prerelease</id>
<url>https://maven.vaadin.com/vaadin-prereleases</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>vaadin-prerelease</id>
<url>https://maven.vaadin.com/vaadin-prereleases</url>
</pluginRepository>
</pluginRepositories>
Known Issues and Limitations
This is the prerelease version of Vaadin 14.x for evaluating a number of new features and bug fixes. The API in this prerelease version is not considered final and may change based on user feedback.
OSGi support
- OSGi with npm does not work in V14.0.0. We are working on a fix for V14.x.
- OSGi with Bower has problems with V14.0.0 but we are working on a fix to be released in a maintenance version (V14.0.X)
Flow
- The Template-in-Template feature has some limitations
- There are some issues in using Web Sockets as the Push channel in certain OSGi environments, but long polling works.
Components
- The dark theme preset does not work in IE11 when applied to the
<html>
element.
Migrating from Vaadin 8
Migrating from Vaadin 10-13
Reporting Issues
We appreciate if you try to find the most relevant repository to report the issue in. If it is not obvious which project to add issues to, you are always welcome to report any issue at https://github.com/vaadin/platform/issues.
A few rules of thumb will help you and us in finding the correct repository for the issue:
- If you encounter an issue when using the HTML/JS API of a component or the component renders incorrectly, the problem is likely in the web component. The web component repositories are named like https://github.com/vaadin/vaadin-button
- If you encounter an issue when using the Java API of a component, the problem is likely in the Flow integration of the web component. The Flow component integration repositories are named like https://github.com/vaadin/vaadin-button-flow
- If you encounter an issue with Flow which does not seem to be related to a specific component, the problem is likely in Flow itself. The Flow repository is https://github.com/vaadin/flow
- If you encounter an issue with Designer, the repository is https://github.com/vaadin/designer
- If you encounter an issue with TestBench, the repository is https://github.com/vaadin/testbench