FAQ

Vaadin

What is Vaadin?

Vaadin is a Java web application framework. It is designed for creating rich and interactive applications that run in the browser, without any plugins. A server-driven architecture together with reusable component model is used to simplify programming of applications and for better web application security. No HTML, XML or JavaScript necessary and all Java libraries and tools are at your disposal.

How does Vaadin differ from other web frameworks?

Vaadin is designed to build web applications, not just web-sites. This positions it for application rather than website development. The programming model is much the same as in traditional desktop programming, with events and listeners rather than requests and responses. If you have written Swing or SWT-applications, you'll feel right at home with Vaadin. The most significant differences between Vaadin and other web application libraries are summarized in the comparison matrix.

Where can I get Vaadin?

You can download Vaadin packages from vaadin.com/download. Alternatively, you can access the sources at dev.vaadin.com. See Building from Sources for details. For Eclipse users, the Eclipse Plugin is the easiest alternative, for others Maven is the easiest way

How to get started with Vaadin?

See the online tutorial at vaadin.com/tutorial and the online reference manual called Book of Vaadin. If you're using Eclipse IDE, the Vaadin Eclipse plugin gets you started in minutes.

What license is Vaadin available under?

Vaadin is free and Open Source under the Apache 2.0 license. Read more about licensing here.

Where can I get help with my technical question?

You can post technical questions to the forum. There are lots of tutorials, articles and other documentation available in the developer wiki. And don't forget to try our site-wide custom search. If you happen to find the answer to your forum question before we do, you can reply to yourself!

Who uses Vaadin?

Vaadin is used around the world - mostly by Java-developers who build business oriented products, internal systems and services. We have collected some showcases of Vaadin users on the Who Is Using Vaadin page.

If you wish to promote that you're using Vaadin, please feel free to post something about it on our forums or ask us to add you to the who is using Vaadin list.

How mature is the framework and what is the history of Vaadin?

Vaadin was previously known as IT Mill Toolkit, which in turn has its roots in Millstone web UI library. The development of Millstone was started already in 2000 and the framework has evolved a lot in the recent years. A lot of effort has been put to keep the framework backwards compatible when possible and thus applications created in 2003 can be easily updated to use the current version.

IT Mill Toolkit was open-sourced in 2007, and since then we have been moving more and more into that direction. Renaming the library as Vaadin in 2009 was one more step in this process.

How well does Vaadin scale and how good is the overall performance?

Vaadin is used in many heavy-load production environments with great success. Also we have done a lot of work to keep the penalty of the server round-trips as small as possible. The QuickTickets scalability study was published to show some numbers about Vaadin scalability.

How are the layouts created?

We have several different options for creating the layout of the application. Most developers prefer the programmatic style of creating layouts in a similar fashion to Swing programming. If you like to use HTML it's possible by using a CustomLayout or if you want to position the elements using CSS, you might want to use CssLayout.

In addition the Vaadin plugin for Eclipse includes a visual editor. It should help you get started with building your applications UI very quickly. It generates Java code for you that you can use as a starting point for implementing event listeners and data binding.

How can I change the look and feel of the application?

Every Vaadin application has a theme assigned to it. You can easily define your own themes by adding your own CSS definitions and images if needed. The CSS class names are well documented and the Eclipse plugin even creates the needed files for you.

What is the relation of Vaadin and GWT? Can I use Vaadin without GWT?

The browser side rendering engine of Vaadin is implemented using GWT. At runtime there are no GWT dependencies in the server side, and the browser side is pure Javascript with no dependencies to Google.
The javascript code shipping with Vaadin is precompiled, and no GWT compilation is required when using them. Generally you don't need to know anything about GWT or how the browser side works unless you want to create a new component that can not be built as a composition of existing ones.
If you wish to extend your app with browser side code you need to write the extensions in pure Java against the GWT API, and compile them to Javascript using the GWT compiler. This is automated very well with our Eclipse plugin or Maven support.

Vaadin Compared to Other Frameworks

How does Vaadin differ from GWT?

GWT applications run in the browser, while Vaadin applications run on the server. We do actually use GWT as a "rendering engine" on the browser side, so you can combine Vaadin and GWT.

How does Vaadin differ from Wicket?

While Vaadin has many similarities to Wicket, main differences are the absence of any HTML templates and Vaadin applications are automatically AJAX-enabled since the framework handles all the wiring between the browser and the server-side application.

Is Vaadin like JSF?

From an architectural point of view, both JSF and Vaadin are server-side frameworks. However, Vaadin applications are much richer and programmed in plain Java - no XML configurations or page templates! Also, it is much simpler to use - only a single JAR file and you have all the components there.

Why should I use Vaadin instead of GWT?

Vaadin applications are run on the server and are inherently more secure since the application logic is not exposed to the client-side. By running the application on a real JVM (on the server) you can use all Java features, libraries and tools.

When should I not use Vaadin?

Although there is no technical limitation to use Vaadin to build websites it might not be the best tool for this. If you site primarily consists of static web pages, links and has no user log-in/session, consider using some CMS or JSP/HTML and only embed Vaadin applications where you actually need more application-like features.

Vaadin Compatibility

Which browsers are supported?

See the Features page for an up-to-date list of supported browsers.

Is Vaadin compatible with other Java tools?

If it is a Java tool, library or technology, the answer is most likely yes. Vaadin is a single Jar-file implementation following Java EE standards and it uses typical desktop UI programming patterns. This should make it compatible with most other Java technologies, libraries and tools. You can get a glimpse of what has been done with it here.

Does Vaadin run on portals or the Google App Engine?

Yes and yes, in addition to running Vaadin applications as stand-alone applications they can be run as standard Java portlets or they can be deployed into the Google App Engine.

Can Vaadin be used together with Spring?

Yes, Vaadin integrates well with Spring. See the Spring Integration article

Vaadin Team

Who is developing Vaadin?

Vaadin is mainly developed and maintained by Vaadin Ltd. (previously named IT Mill). As in most open source projects, however, hobbyists and professional enthusiasts play a big role in its development. For a list of developers, see Contributors list maintained by Ohloh.

How is Vaadin development financed?

Vaadin Framework is backed by Vaadin Ltd, which offers services, solutions, support and add-on components on top of Vaadin. This revenue makes it possible to keep Vaadin truly free for anyone to use. All commercial services and products on top of Vaadin are 100% optional and there is no need to buy anything.

Do you give speeches in conferences?

Yes, we give speeches in many conferences. If you would like us to speak in your conference, please don't hesitate to contact us. As an example, see this presentation.

Vaadin Add-ons

What are Vaadin add-ons?

Vaadin add-ons are extra components, themes, tools, etc. available at the Vaadin Directory for easing the life of Vaadin developers. Most applications can be built using just the core components of Vaadin Framework, but sometimes you just need something more. Then it's a good idea to look into the Directory before building your own components. There just might already be an add-on for just your needs.

On the other hand, if you have already created a piece of work that you'd like to share with the Vaadin community, you should consider publishing it as an add-on in the Directory. Most of the add-ons are free (Apache 2.0 licensed), but some add-ons are licensed with the commercial CVAL license.

After purchasing CVAL licensed add-ons for a project, can I use the add-ons also in other projects?

Yes. The CVAL license agreement is tied to a developer in a company, and not to whatever he's working on. However, to use a CVAL licensed add-on in a project all developers contributing to the project need to have a CVAL license.

How many CVAL add-on licenses do I need?

To use a CVAL licensed add-on in a project all developers contributing to the project need to have a CVAL license.

Can I transfer the CVAL add-on license to another developer?

Yes, you can do this within the same organization as long as you don't charge any fees for the transfer. You may not transfer the license to another organization.

Can I distribute the add-on I've purchased a CVAL license for to my customers?

Yes, distributing the add-on to your customers is allowed.

Can I expect free updates or support for the add-on I purchased? What about bug fixes?

Vaadin Ltd will publish bug fixes and give free support (over the forums) for all add-ons offered by us.

How can I get new features to a CVAL licensed add-on in the Directory?

You have to contact and ask us to implement the feature. We might implement it as a free update, and we also offer commercial services for extending the Apache licensed add-ons. Note that you will get a discount if you allow the new feature to be published in the Directory under the original license.

Is there a licensing option to get full access for all add-ons without needing to purchase them individually?

Yes, our Vaadin Pro Tools (and old 'Pro Account') includes license for all commercial add-ons available in Directory

Vaadin Trainings

What does the Vaadin 7 Fundamentals training consist of?

In Vaadin Fundamentals course you will learn the fundamentals of Vaadin application development and the necessary aspects of the server-side framework from using UI components and managing layouts to customizing your application themes. The course descriptions can be found at Vaadin Training page.

What does the GWT Fundamentals training consist of?

In GWT Fundamentals course you will learn how to use widgets and layouts provided by GWT to build a simple application typically required in a business environment. Includes different views, styling with CSS, using additional Widgets through plug-ins, handling events and accessing data through RPC. The course description can be found at Vaadin Training page.

What does the Advanced Vaadin 7 training consist of?

The Advanced Vaadin course teaches you the more challenging areas of developing professional Vaadin applications and uncovers the Vaadin client-side. The course description can be found at Vaadin Training page.

When the training days start and end?

Training day starts at 9AM and ends at 5PM. Lunch break is at noon.

Who are the Vaadin Training trainers / instructors?

Vaadin Experts and developers who have long-term experience in various Vaadin projects and applications.

In EU countries, why do I have to give my VAT number in registration?

The Reverse charge EU VAT act ยง65 applies to Vaadin Trainings in EU area. Please read more at EU legislation summaries web page.

Do I have to have to have a laptop?

Yes, the laptop is mandatory, since there will be a lot of hands-on coding in the course.

Can I join the training for just one (1) day?

Vaadin Trainings are built that way where participation on both days is mandatory.

Does the training fee include hotel accommodation?

The hotel accommodation is not included in the course fee. Please make your hotel reservation by your own preferences.

Where are the trainings organized?

Vaadin Trainings are organised in very central locations in various cities around Europe and USA.

How can I pay the Vaadin Training?

The Vaadin Training is payed during the enrollment process via sign-up.Payment methods are Visa/Mastercard, Paypal, pdf invoice to an valid e-mail address, paper invoice, e-Invoicing. Terms of payment 14 days net.

Where can I find the terms and conditions for the training?

The up to date Vaadin Terms and Conditions for Training Services can be found at https://vaadin.com/training-terms-of-service