Questions tagged [vaadin]

Use the [vaadin] tag for all posts relating to any use of the Vaadin web application development platform. For posts related to a particular Vaadin or a specific component, additionally tag the post with the corresponding tag, for example: [vaadin8], and [vaadin-upload], respectively.

Overview

Vaadin is an open source platform for building web applications. The Vaadin platform consists of a set of web components, a Java web framework, a TypeScript web framework, a Collaboration Engine, and a set of tools.

Flow

The Java web framework, Flow, uses Java for both the frontend and backend code. UIs can be created either by constructing and laying out components with Java or by declaring them with a LitElement template. UI event handling code is implemented in Java and runs on the server. UI state is also maintained on the server.

Vaadin's legacy Java web application development offering, Vaadin Framework, preceded Vaadin 10, and was built on GWT (Google Web Toolkit).

Fusion

The TypeScript web framework, Fusion, uses TypeScript for the UI code and Java for the backend (endpoint) code. UIs are created by declaring them within a TypeScript/LitElement class. UI event handling code is implemented in TypeScript and runs in the browser. UI state is also maintained in the browser.

Components

Vaadin Components are standard WebComponents implemented in LitElement. In addition to being used by Flow and Fusion, Vaadin Components can be used by other web technologies, such as Angular, React, and Vue. Prior to Vaadin 15, Components were implemented in Polymer.

Marketing Blurb

  • Vaadin improves the client side presentation layer by introducing client-server web components for rapid application development.

  • For Flow-based applications, a few lines of Java code and Vaadin takes care of the rest. No complex configurations, no JavaScript. Code on the server side.

  • For Fusion-based applications, the UI gains a reactive TypeScript frontend with a Spring Boot integrated backend, so you can focus on building your app instead of configuring stuff.

  • Wide browser support - Built on Internet standards, Vaadin applications support all modern browsers.

  • Stunning Web Applications - The look and feel makes a difference. Vaadin comes with great-looking components and easy use of themes.

Versions & Roadmap

Summary

  • Vaadin 22, the latest major version, was released on 9 December 2021.

  • Vaadin 14 was released on 14 August 2019 and is the most recent LTS (Long Term Support) version.

  • Vaadin 10 was released on 25 June 2018 and is the previous LTS version.

  • Vaadin Framework 8 was released in Feb 2017.

  • Vaadin Framework 6 and 7 are still also in active use but are not officially maintained.

  • Vaadin 23, the next LTS version, is slated for release in March 2022.

For new projects, version 14 or 22 is recommended.

Details

For the most up-to-date version and roadmap details, see:

Question and Search Hints

For some questions and queries, the answer is same regardless of Vaadin version or framework. However, it is often relevant to include the major version in the question or query as well.

6816 questions
97
votes
3 answers

Java to Clojure rewrite

I have just been asked by my company to rewrite a largish (50,000 single lines of code) Java application (a web app using JSP and servlets) in Clojure. Has anyone else got tips as to what I should watch out for? Please bear in mind that I know both…
yazz.com
  • 57,320
  • 66
  • 234
  • 385
59
votes
16 answers

How to disable spring-security login screen?

I'm using spring-boot-starter-security dependency, to make use of several classes that come with spring-security. But as I want to integrate it in an existing vaadin application, I only want to make use of the classes, and not of the default…
membersound
  • 81,582
  • 193
  • 585
  • 1,120
57
votes
10 answers

Differences between GWT and Vaadin

Can anyone suggest whether "GWT" or "Vaadin" are a better choice to design an application? Also: what are the differences in coding style?
sundhar
  • 835
  • 2
  • 9
  • 12
50
votes
4 answers

webxml attribute is required with Servlet 3.0

I get this error when trying to compile a Vaadin WAR: Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.1.1:war (default-war) on project testvaadin-web: Error assembling WAR: webxml attribute is required (or pre-existing…
Roger
  • 2,684
  • 4
  • 36
  • 51
48
votes
8 answers

Wicket vs Vaadin

I am torn between Wicket and Vaadin. I am starting a micro-isv and need to make a choice of web framework. I have narrowed down my choices to Wicket and Vaadin. I have used both frameworks and I love them both. however I need to make a choice. If…
joshua
  • 4,118
  • 3
  • 40
  • 53
48
votes
5 answers

java.lang.NoClassDefFoundError: org/apache/tools/ant/util/ReaderInputStream vaadin+gradle+intelliJ

I have been working fine with Vaadin + Gradle + IntelliJ until yesterday night when I introduced SLF4J(logback) logging to my application. Since then I can't make my project anymore due to classDefFoundError of…
kasongoyo
  • 1,748
  • 1
  • 14
  • 20
47
votes
8 answers

Spring Security circular bean dependency

I'm currently working on a Vaadin spring application. According to the app specifications, authentication/authorization of the users must be completed by querying database via jdbcTemplate. How to solve this issue? I'm using Spring Boot…
Malakai
  • 3,011
  • 9
  • 35
  • 49
41
votes
2 answers

To Go or Not To Go with Liferay? What's the good, bad, and ugly?

We are evaluating several solutions for a new web thing we're looking to build. There are several aspects to it, including user management, content management, campaigns, community, and financial transactions. We are looking to roll the framework…
Alexx
  • 3,572
  • 6
  • 32
  • 39
36
votes
14 answers

Eclipse The hierarchy of the type ... is inconsistent with @Configurable annotation

I am developing a Spring/Vaadin/Hibernate application. Everything works but I still have the following error markers in Eclipse STS 2.8.1: The hierarchy of the type BankView is inconsistent The hierarchy of the type AbstractEntityView is…
c4k
  • 4,270
  • 4
  • 40
  • 65
30
votes
2 answers

Vaadin 7: Usage of UI vs. Navigator+Views

In Vaadin 7, a web application can have multiple entry points; the UIs. Each UI can only have a single Navigator containing Views. We are working on an application which requires multi-level navigation, and for some screens we don't know if we…
cporte
  • 2,191
  • 3
  • 20
  • 30
30
votes
2 answers

Vaadin: Design patterns

I am currently working on three Vaadin applications and I really feel like I miss something. I used to work with Spring MVC before, where architecture is clear and decoupled, you inject services to controllers and don't couple controller to UI and…
Xorty
  • 18,367
  • 27
  • 104
  • 155
25
votes
6 answers

Vaadin and Spring MVC Integration

I'm thinking about the possibility of using Spring MVC with Vaadin Framework. Are there any documented ways of making them play nicely together ? Also is it a good idea to use them together ? relating to performance; I'm going to run the app on a…
dakull
  • 719
  • 2
  • 7
  • 14
20
votes
5 answers

Vaadin open link in new tab

I have the following piece of code that I wrote using Vaadin. The code opens the page www.google.com when the user clicks the button. My question is is there any way for me to specify that the page is to be opened in a new…
user3702643
  • 1,465
  • 5
  • 21
  • 48
19
votes
4 answers

Where should I place my Vaadin 10+ static files?

In Vaadin 10-14, where should I place my static files, such as CSS, JavaScript, and Polymer templates? How about static files such as images? Also, how do I import these files in Vaadin? Is there a difference between Vaadin 14 with npm and Vaadin…
Erik Lumme
  • 5,202
  • 13
  • 27
19
votes
4 answers

Vaadin Grid vs Table

What is the difference between the Grid and Table components in Vaadin 7? Which should I use, and when?
Daniel Hári
  • 7,254
  • 5
  • 39
  • 54
1
2 3
99 100