Vaadin Blog
Technical Erosion and Java Swing
In March 2018 Oracle released its Java Client Roadmap update. The document was significant because it acknowledged the creeping obsolescence affecting all desktop-oriented Java technologies including Swing, Applets, Web Start, and JavaFX. The roadmap update mentions the shift to mobile-first and ...
Migrating Java enterprise apps to Kotlin
Kotlin managed to show a substantial presence in the community, as well as steady growth compared to other modern programming languages. This tutorial is not going to be yet another Kotlin 101, it’s not exclusive for Android developers, and it’s not an opinionated post comparing, e.g. Kotlin and ...
How to create a Docker container for a Vaadin Java app
In this tutorial you learn to deploy your Java-based Vaadin application in a Docker container and run it locally. Configuring Docker is a complex topic that has, by now, filled many articles and books. This tutorial gives you a short and simple example of how to start a Vaadin application in a ...
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 ...