Vaadin Framework 8: Web app development made easier than ever

As discussed in a previous blog entry, the unique architecture of Vaadin Framework makes it one of the easiest ways to build rich dynamic Web applications, just by using your Java skills. Of course, going to low level Web technologies is possible with Vaadin, but it is also possible to create well performing Web apps without getting your hands dirty with CSS, HTML or JavaScript. Here’s what’s new!

What’s new in Vaadin Framework 8?

This new major version changes the most essential parts of the product, but it still provides the fundamental and architectural parts of the product that our developers enjoy. For starters, we dropped support for legacy technologies like JDKs older than V8 and legacy web browsers. These changes make it possible to provide a more productive API and better performing UI.

Basically, the whole data binding API you work with daily is now re-written. The old APIs were developed in an era without modern Java features, like generics and lambdas. The API is now built from ground up to take advantage of the latest of what Java 8 can provide.

An example of what upgrading to modern Java API can do to your code

The screenshot above is just one extreme example, but there are numerous cases where the better typed API and emphasizing core Java features makes using Vaadin Framework easier than ever.

The data APIs also provide a dramatic performance improvement, in case you used large in-memory data sets.

For further information on the changes we made to Vaadin Framework 8, read this article.

How to upgrade?

Backwards compatibility has always been very important for Vaadin applications. Many of our customers’ apps have been maintained for years, even over a decade, and witnessed several Web technology revolutions.

To keep it easy for large applications to move to Vaadin 8, we still kept the old component implementations in a separate compatibility package. There is also a conversion script that automatically goes through your source code and changes the imports of relevant classes to the compatibility package. This way you can start taking advantage of the modern API in a blink.

What next?

Even though Framework 8 came out just a month ago, we are already working hard on the next minor version. Even though the numbers now change after the first dot, the features are still major. The next version upgrades should be mostly focused on increasing the version number in your pom.xml.

In 8.1, we’ll focus on adding the often requested features to the Grid component, which has been built to replace our infamous old Table. The Grid now finally gets support for advanced components in cells, support for displaying hierarchical data and drag and drop support.

After we get 8.1 completed, 8.2 will focus on improving features for mobile devices.

Try it out and let us know what you think!

As discussed previously, Bluemix is a great platform to try out Vaadin and host your production applications. The easiest way to try out the new Vaadin Framework 8 is to go through the updated Vaadin tutorial or just create an empty project and when you have something to share with your colleagues, deploy the war file to Bluemix using cf push -p target/*.war

The source code of Vaadin Framework is currently maintained in GitHub. If you come up with an improvement idea or found a bug, file issues or report your findings here on the comment section! We appreciate the feedback!

IBM Cloud is excited to announce more flexibility and control for account management services like billing, user management, and global catalog. This update means that key account management functions can now be granted to other users in your account with IBM Cloud Identity and Access Management policies.