Version 7.3.7 built on 2014-12-17.

Release Notes for Vaadin Framework 7.3.7

Overview of Vaadin 7.3.7 Release

Vaadin 7.3.7 is a maintenance release that includes a number of bug fixes, as listed in the change log below.

Security fixes in Vaadin Framework 7.3.7

Vaadin 7.3.7 fixes an important security issue.

Portlet error messages

Proper escaping of HTML in portlet error messages was not ensured, making a reflected cross-site scripting attack possible through VaadinPortlet by making the user load a URL designed to include an error message crafted by the attacker.

Change log for Vaadin 7.3.7

This release includes the following closed issues:

#8696CustomLayout with no template broken.
#8802SQLContainer removeItem Error when isModified
Priority#10901Back button still changes the URL even though the view blocked the navigation
#14617Cloned element size on dragging
Priority#14644The first tab of tabsheet is left scrolled out (hidden) if it is first set visible(false) and then back visible
#14757Valo PopupDateField popup placed on top of date field
Priority#14857DateField popup doesn't close when click on popup button in Chrome.
#15149HorizontalSplitPanel content is not visible when height is not set explicitly and first component is not set
Priority#15182Accordion causes SEVERE error in browser console
#15183VBrowserDetails fails to detect Android when using Firefox
Priority#15189Regression: Table column jumps when table is shown and table is contained in a layout
#15239Valo: Opacity is not applied to the labels of disabled check boxes and radio buttons
Priority#15242Long events aren't displayed properly when using Container instead of EventProvider.
#15253Valo: Disabled links are not shown differently from enabled links
#15254Application Connection should retry UIDL requests on error
Priority#15255MenuBar submenus close unexpectedly when using the Valo theme
#15271UIInitHandler commitJsonResponse does not set content length
#15326UI.setTheme(null) throws NPE
#15355BeanItemContainer.addNestedContainerBean does not work for existing items
#15398Portlet error messages are not properly handled
 
VoteEnhancements Vaadin support users have voted for
PriorityDefects Vaadin support users have prioritized

You can also view the list of the closed issues at the Vaadin developer's site.

Enhancements in Vaadin 7.3

The 7.3 includes many major and minor enhancements. Below is a list of the most notable changes:

Incompatible or behavior-altering changes in 7.3

Known issues

Limitations

Vaadin Installation

Vaadin is a Java framework for building modern web applications that look great, perform well and make you and your users happy. Vaadin is available under the Apache License, Version 2.0 (see the license.html in the Vaadin ZIP or JAR package).

The easiest ways to install Vaadin are:

It is also available as a ZIP package downloadable from Vaadin Download page.

Package Contents

Inside the ZIP installation package you will find:

See the README.TXT in the installation package for detailed information about the package contents. Book of Vaadin (for Vaadin 7) gives more detailed instructions.

For server-side development, copy the vaadin-server , vaadin-client-compiled , vaadin-shared , and vaadin-themes from the main folder and the dependencies from the lib folder to the WEB-INF/lib folder of your Vaadin project. (The vaadin-client-compiled is necessary if you do not wish to compile the widget set by your own, which you need to do if you use almost any add-on components.)

Updates to the Packaging

Since Vaadin 7.2.0, the old vaadin-theme-compiler has been moved into a separate project and renamed to vaadin-sass-compiler. It is now included along with the other 3rd party dependencies in the ZIP package.

For pure client-side development, you only need the vaadin-client and vaadin-client-compiler JARs, which should be put to a non-deployed project library folder, such as lib . You also need them if you compile the widget set for any reason, such as using Vaadin add-ons, or create new server-side components integrated with client-side widgets.

Migrating from Vaadin 6

All Vaadin 6 applications need some changes when migrating to Vaadin 7. The most obvious changes are in the application/window API and require extending either UI or UI.LegacyApplication instead of Application. A detailed list of migration changes are given in the Vaadin 7 Migration Guide.

Any custom client-side widgets need to be ported to use the new client-server communication API, or the Vaadin 6 compatibility API.

Vaadin 6 add-ons (ones that contain widgets) do not work in Vaadin 7 - please check the add-ons in Vaadin Directory for Vaadin 7 support.

Vaadin 7.3.7 Dependencies

When using Maven, Ivy, Gradle, or other dependency management system, all Vaadin dependencies are downloaded automatically. This is also the case when using the Vaadin Plugin for Eclipse.

The Vaadin ZIP installation package includes the dependencies in the lib subfolder. These need to be copied to the WEB-INF/lib folder of the web application that uses Vaadin.

The dependencies are listed in the Licensing description. Some are explicit dependencies packaged and distributed as separate JARs, while some are included inside other libraries.

Bean Validation

If you use the bean validation feature in Vaadin 7, you need a Bean Validation API implementation. You need to install the implementation JAR in the WEB-INF/lib directory of the web application that uses validation.

Upgrading to Vaadin 7.3

When upgrading from an earlier Vaadin version, you must:

Remember also to refresh the project in your IDE to ensure that the new version of everything is in use.

By using the " ?debug " URL parameter, you can verify that the version of the servlet, the theme, and the widget set all match.

Eclipse users should always check if there is a new version of the Eclipse Plug-in available. The Eclipse Plug-in can be used to update the Vaadin version in the project (Project properties » Vaadin).

Maven users should update the Vaadin dependency version in the pom.xml unless it is defined as LATEST . You must also ensure that the GWT dependency uses the correct version and recompile your project and your widget set.

Liferay and other portal users must install the Vaadin libraries in ROOT/WEB-INF/lib/ in the portal (and remove a possibly obsolete older vaadin.jar). Additionally, the contents of the vaadin-client-compiled and vaadin-themes must be extracted to the ROOT/html/VAADIN directory in the Liferay installation. If your portal uses custom widgets, you can use Liferay Control Panel for Vaadin for easy widget set compilation.

Notes and Limitations for Google App Engine

The following instructions and limitations apply when you run a Vaadin application under the Google App Engine.

For other known problems, see open tickets at developer site dev.vaadin.com.

Supported Technologies

Vaadin 7 is compatible with Java 6 and newer. Vaadin 7 is especially supported on the following operating systems:

Vaadin 7 requires Java Servlet API 2.4 but also supports later versions and should work with any Java application server that conforms to the standard. The following application servers are supported:

Vaadin 7 supports the JSR-286 Portlet specification and all portals that implement the specification should work. The following portals are supported:

Vaadin also supports Google App Engine.

Vaadin 7.3.7 supports the following desktop browsers:

Additionally, Vaadin supports the built-in browsers in the following mobile operating systems:

Vaadin SQL Container supports the following databases:

Vaadin on the Web