Vaadin is an interesting RIA platform built by Vaadin, LTD. Vaadin differs from your standard RIA by existing almost exclusively on the server. All application state remains on the server and all events are handled through communication with the server. The display layer is written as a layer above GWT and the whole project is open source and free. This evaluation post is the first in a series of my lessons learned while evaluating this framework. Vaadin is a good fit for all the web-applications that fit in the general bucket of “enterprise support tools.” The reasons why are covered after the jump.
- Complete documentation. You don’t have to dig through a user-generated wiki. They have the whole book up on the website.
- Friendly forums. A search shows multiple people that had the same problem. Instead of the usual, “use the search function,” that you see on a lot of other forums, there were real replies.
- All java. A developer can build an entire web-application with just Java. That’s really important if web-application programming isn’t a core competency.
- Doing things the Vaadin way is really easy. For instance, the hbncontainer makes building an app around hibernate trivial.
- The widgets really work like their desktop equivalents. The table responds to keystrokes and the split panels work.
- Vaadin hides the complexities of layouts on the web. You just specify your container strategy.
Were there problems?While Vaadin is pretty easy and built on a language I’m familiar with, there was still a learning curve. Most of my issues came from doing things outside of the Vaadin way.
- Vaadin and Maven don’t seem to get along too well. Trying to install the Visualizations plugin was a nightmare. Eventually I had to install it and its dependent sources into my test project to build the widget set.
- Documentation and examples on how to leverage your existing DAO layers was sparse and incomplete.
- The same goes for Spring integration, esp Spring Security.
ConclusionIf had to build a web app and didn’t have a web team, Vaadin is good way to go. You can build apps that have more than the basic “developer” look and feel without a whole lot of effort. The documentation lapses will surely disappear as the framework gains steam. The next post I’m going to write is about how to use your existing DAO structure with Vaadin.
Did you like this? Please share:
The Lost Year: A Failed Experiment to Switch Away From Mac
Fed up with the Apple Keyboard, I bought a ThinkPad, installed Linux, and promptly decided that I hated computers.
Maker's Space, Manager's Space
The Grand Remote Work Experiment: A Retrospective
The COVID-19 pandemic has lead to an unexpected experiment in remote working. What has worked and why?