Feature Flags
The following listings contain all experimental and legacy features. They’re also listed in the com.vaadin.experimental.FeatureFlags
(Javadoc) class.
Experimental Features
enforceFieldValidation
-
Enforce client / constraint / binder validation. Learn more
spreadsheetComponent
-
Spreadsheet component (Pro).
collaborationEngineBackend
-
Collaboration Kit backend for clustering support. Learn more
mapComponent
-
Map component (Pro).
Since Vaadin 23.2, the Map component can be used without the feature flag.
Legacy Features
oldLicenseChecker
-
Old license checker.
webpackForFrontendBuild
-
Use webpack for front-end builds. Learn more
Managing Feature Flags
Feature flags can be managed in different ways: by using Vaadin Developer Tools; by editing the feature flags properties file; or by setting Java system properties. Each of these methods is described in the sub-sections that follow. However, remember that system properties always have the highest priority. Since they aren’t written into the feature flags properties file, they’re valid only for a single execution.
Using Vaadin Developer Tools
It’s easy to manage feature flags using Vaadin Developer Tools. When running your browser in development mode, click the Vaadin Developer Tools icon button in your application — it’s located at bottom right corner.
Next, open the Experimental Features tab and then click the toggle buttons to enable or disable features.
When you’re finished, restart the application for your changes to take effect.
Editing the Properties File
As mentioned above, you can also manage feature flags by editing the properties file. To do so by this method, edit the src/main/resources/vaadin-featureflags.properties
file in your application folder — or create the file if it doesn’t already exist.
When you have that file open, add a line for each feature in the format of com.vaadin.experimental.<FEATURE_NAME>=true
. Below is an example of how this might look:
+
.vaadin-featureflags.properties
com.vaadin.experimental.enforceFieldValidation=true
To disable a feature, remove the corresponding line or set its value to false
.
When you’re finished enabling or disabling feature flags, save the properties file and restart the application.
Setting Java System Properties
The last method for managing feature flags is to set the Java system properties. From the command-line, you would use the IDE launch configuration or a tool configuration — such as, Spring Boot Maven plugin — to set a system property for each feature flag to be enabled or disabled.
The property name should be in the format vaadin.<FEATURE_NAME>
, like so:
-Dvaadin.enforceFieldValidation=true
To temporarily disable a feature, set its property value to false
, like this:
-Dvaadin.enforceFieldValidation=false