What's New

Vaadin Framework 8: Web app development made easier than ever

Share this post:

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?

Vaadin logoThis 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.

Vaadin 8 code comparison to V7An 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!


More What's New stories
February 22, 2019

IBM Cloud Monitoring with Sysdig is Available in Frankfurt

Today, we're excited to announce the availability of IBM Cloud Monitoring with Sysdig in the Frankfurt, Germany multi-zone region. IBM Cloud Monitoring with Sysdig is a fully managed, enterprise-grade monitoring solution on IBM Cloud that provides increased insight and faster incident resolution via a simplified data collection approach.

Continue reading

February 15, 2019

Liberty for Java Buildpack Now Contains Two Liberty Production Runtimes

The Liberty runtime is moving from a quarterly to a four-week release cycle. As a result, the buildpack will release new functions and fixes quicker. Users of the Liberty for Java buildpack will notice a few changes to the Liberty versions packaged with the buildpack.

Continue reading

February 8, 2019

IBM Cloud Functions Improves Performance for Python 3.7 Actions

We're happy to announce that IBM Cloud Functions Python 3.7 runtime has been optimized for latency. The updated Python 3.7 runtime leverages a new web proxy built with Go that replaces the previous Python web proxy.

Continue reading