Developing Web Applications With Vaadin

After Shreyas shared his experience with Vaadin in his comment on my previous post, I started to play with the web framework. As it advertises, it’s “a Java framework for building modern web applications that look great, perform well and make you and your users happy.”

Based on my experience, I think it’s a great framework that is very intuitive yet powerful. All you need to do is to write Java code in a similar way to using Java AWT and Swing for standalone applications. The minor different is that you can have CSS style control on the widgets.

Lost VMs or Containers? Too Many Consoles? Too Slow GUI? Time to learn how to "Google" and manage your VMware and clouds in a fast and secure HTML5 App.

It’s quite a simplification over Google’s GWT. The GWT allows you to write JavaScript based applications with Java. When you are done, you will get the JavaScript code which will run in browsers. To get a reasonable project done, you mostly need Java Servlet separately. Although GWT offers RPC mechanism, you still have to define interface and sync up the client and server component, not to mention the confusing asynchronous call back method signature.

Vaadin’s programming model does not differentiate client and server piece. The code execution is actually on the server side. This is very similar to the ASP .Net model, and that explains why it’s simpler.

As with almost any engineering, you trade something for something else. Using Vaadin, you get simplification at cost of performance. For most web applications, performance may not be a big concern. Performance also depends on how you design applications. Because I haven’t run/test any Vaadin application with big scale, I don’t have much to say about it. One thing I know that ASP.Net which uses same server execution model works in large web sites, therefore the approach itself is fine.

To download and play with the Vaadin framework, you can check out its project home. The BSD license is a big plus.

If you use (I think you should these days) IDEs like Eclipse or NetBeans, you want to use its Eclipse plug-ins. The quick start tutorial is listed on the web site.

While I use the Eclipse plug-in, I got into several gotchas because I installed standard Eclipse for Java developer which cannot discover Tomcat server and launch it as needed. After searching around and installing extra plug-ins, I finally got it working. It’s not really worthwhile. You want to avoid these by starting with Eclipse IDE for Java EE Developers.


This entry was posted in Software Development and tagged , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

One Comment

  1. Posted April 25, 2015 at 5:36 am | Permalink

    Great post. I used to be checking continuously this
    blog and I’m inspired! Extremely useful info specially the remaining section :
    ) I deal with such info much. I was looking for this certain information for a very long time.
    Thank you and good luck.

Post a Comment

Your email is never published nor shared. Required fields are marked *


You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>


    My company has created products like vSearch ("Super vCenter"), vijavaNG APIs, EAM APIs, ICE tool. We also help clients with virtualization and cloud computing on customized development, training. Should you, or someone you know, need these products and services, please feel free to contact me: steve __AT__

    Me: Steve Jin, VMware vExpert who authored the VMware VI and vSphere SDK by Prentice Hall, and created the de factor open source vSphere Java API while working at VMware engineering. Companies like Cisco, EMC, NetApp, HP, Dell, VMware, are among the users of the API and other tools I developed for their products, internal IT orchestration, and test automation.