Vaadin , server-side RIA framework

07 Ago


Today we are going to talk about Vaadin, a server-side RIA framework that makes easy the UI development in our web applications. As the official Vaadin homepage says, Vaadin is:

Vaadin is a server-side AJAX web application development framework that enables developers to build high-quality user interfaces with Java. It provides a library of ready-to-use user interface components and a clean framework for creating your own components. The focus is on ease-of-use, re-usability, extensibility, and meeting the requirements of large enterprise applications. Vaadin has been used in production since 2001 and it has proven to be suitable for building demanding business applications.

Some notes about Vaadin architecture.

Vaadin allows us to manage the whole UI using Java code. Later, we will see how Vaadin uses an event driven programming paradigm, quite similar to Swing, AWT or SWT.

Detailed Vaadin architecture

In the following image we can see the Vaadin architecture in a more schematic way.

vaadin architecture less detailed

Advantages of using Vaadin.

Personally, the main advantages I think Vaadin has, comparing to another more settled RIA frameworks are as follows:

  • You can manage the whole UI with Java code. These are great news because developers don’t need to learn every single aspect from another RIA frameworks such Struts or Java Server Faces. It is a truth that there are more Struts or JSF developers than Vaadin ones, but it is a truth too that there are more people who can write Java code than JSF or Struts components.

  • Integration with GWT. One of initial disadvantage that Vaadin could have if you compare it with Struts or specially JSF is the lack of basic UI components (tables, specified text files, …). This initial disadvantage is solved because the next three reasons:

  • Generate portlets from Vaadin applications.. Vaadin allows us to transform our web application to Liferay portlet. If you want to know more about it

Besides these reasons there are some aspects why you should consider Vaadin a real option to develop with your web application.

  • Eclipse, STS and Netbeans integration. Vaadin is perfectly integrated with the current most popular IDEs. I have tested the Vaadin para Eclipse plug-in for Vaadin plug-in and it works without any problem. If you want to learn more about it you can visit plug-in for Eclipse.

  • Vaadin integration with Maven. Vaadin can be used along with Maven. In fact, you can generate an easy Vaadin example project from the following Maven archetype.

  • Documentation quantity and quality Vaadin has a good amount of documentation and above all it is well explained. I say this because there are many other projects with lots of documentation but poorly structured and explained. This is not the case within Vaadin. Each part of its architecture is well explained from the basic to the more complex aspects, with many examples related to. Another thing I like about add-ons is that you can download them along with their own documentation. I don’t know if this is something mandatory by the Vaadin project but anyway it is a good point. You can get Vaadin documentation in HTML format, or download it free in PDF format.

  • Community and support. Obviously, The Vaadin development group is not as big as with another frameworks. However, it is very well management. You can go the discussion forum here after registration. It is structured in differents subjects like general help, news, UI components, … . What I like most is how quick your questions are answered. Much of the times are the own Vaadin official developers who answered your questions.

Another interesting point about Vaadin is you can get a PRO account. You can gain a more direct support from the Vaadin development team. If you have a problem, it becomes a problem to fix by the developers of Vaadin. If you want to know more about Vaadin support.

Disadvantages of using Vaadin.

Obviously not every framework is perfect, neither Vaadin is. From my point of view some aspects to improve within Vaadin are:

  • Althought Vaadin core has an Apache License 2, there are some UI components or add-ons you have to pay for. One really big problem is that if you want to make regression test in our web application we can’t use Selenium. Instead of that there is an add-on called Vaadin Testbench that can be used the same way like Selenium. The issue is that after 30 days you have to pay like 1000 € in order to still use it.It would be gret that Vaadin will be a complety free software project.

  • The book of Vaadin. More than a problem this is a little issue. All Vaadin documentation is available in HTML format or in PDF format. However, it seems that the PDF format doesn’t contain the same contents the HTML documentation has

To sum up.

Vaadin is a server-side RIA framework quite easy to use, especially for those who had developed with Swing or SWT. The learning curve is not high because you only need to know about Java development apart from some xml configuration. Besides that, because of the integration Vaadin has with other technologies such as Eclipse, Maven or GWT it is quite straightforward using Vaadin in our projects. As a drawback I woudl point that Vaadin is not 100% a free source project.

I hope to write more about Vaadin in the following posts.

2 comentarios

Publicado por en 7 agosto, 2011 en GWT, RIA, Vaadin


Etiquetas: , , , , , ,

2 Respuestas a “Vaadin , server-side RIA framework

  1. Jean-Francois Lamy

    10 agosto, 2011 at 7:21 pm

    The PDF and HTML documentation are generated from the same docbook information, so your comment about the documentation does not hold. In my experience the two are synchronized. Of course, the HTML version is able to provide links to the actual java code for the examples, which is not possible for PDF.

    • hop2croft

      10 agosto, 2011 at 9:33 pm

      Hello Jean-François,

      first of all I wanna thank you for reading my blog. The issue has been recently solved. Two weeks ago when I downloaded the Vaadin pdf version there were some chapters (from 12th to 15th) that were available in the HTML version but not in the PDF one. Today, as you can see in the publishing field in the webpage, the Vaadin development team has reedited (4th edition) the PDF version, so now the PDF file is the same that the HTML one 😀 .

      As I mentioned in my post I think the Vaadin documentation is just great and besides that there are a great number of examples. I only commented this issue because I was thinking about buying the PDF version, and I wasn´t sure if I would get the last chapters. Now the problem has dissapeared :).



Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de

Estás comentando usando tu cuenta de Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: