Vaadin Blog
Session Replication in the World of Vaadin
We often get questions about how to use session replication together with Vaadin. Many of Vaadin's unique capabilities are based on the way the entire UI state is stored in a server-side user session. For this reason, our recommendation is to rely on session replication as little as possible. ...
Java Bean Validation: A Comprehensive Introduction and Best Practices
Jakarta Bean Validation (previously known as Java Bean Validation) allows you to define data validations using annotations in your Java Beans. Its motto is "constrain once, validate everywhere". Available implementations Jakarta Bean Validation is an API defined by the JSR 380. Currently, there are ...
Become a web app development expert with free training videos
To help developers accelerate their adoption of the latest Vaadin technology, we have decided to make a part of our training videos available to all community members for free. The free offering contains all beginner level courses for both Vaadin 8 and 10+ and is available in training videos. After ...
Building a dynamic web form with validation
When building business web apps, one of the most common tasks is data entry, that is, lots of webforms bound to domain objects or POJOs, validated against sometimes complex logic and finally persisted in a database or perhaps over REST to a remote server. In this tutorial, we walk through the ...
Uploads and downloads, inputs and outputs
Vaadin Upload asks the developer to provide an OutputStream where the framework can stream the file content. Vaadin StreamResource (~ download) asks the developer to provide an InputStream the framework can read and stream to a user. Intuitive? Not really, unless you have accustomed to this ...
Integrate JQuery into Vaadin Flow
JQuery used to be one of the top JavaScript libraries and it is still really popular today. This tutorial demonstrates three alternative ways to integrate jQuery in your Vaadin project and check that it’s loaded. Note This tutorial requires Vaadin 14 in npm mode (this is the default mode). Option ...
Testing the UI without a browser
Martin Fowler has introduced a metaphor Test Pyramid, to suggest that you should only write a fraction of end-to-end tests compared to small unit tests. It is not because end-to-end tests, like the ones using Vaadin TestBench or Selenium, are worse. They are actually better as they test all parts ...
LitElement and PWA
In the first four tutorials in this series, we’ve built an app with LitElement, using Redux for state management, Vaadin Router for navigation and Webpack for building and code splitting. In this final tutorial, we turn the application into an offline-capable Progressive Web App. If you didn’t do ...
Navigation and code splitting in a LitElement project
So far in this tutorial series, we have built an app with LitElement and connected it to a Redux store for state management. In this tutorial, we add a new view for stats to learn how to navigate between views and how to split code for performance. If you didn’t do the previous steps of the ...