KEMBAR78
Introduction to Vaadin | PPT
Introduction to Jeroen Benats
Agenda Introduction On the job Demo Future of Vaadin Study material
Introduction
What is it? Java as only programming language Closer to GUI than web development Utilizes Google Web Toolkit  Server-side validation for all actions Extendable with GWT widgets Themed with CSS Eclipse, Netbeans, Maven support Servlet + portlet development
Supported browsers
History 2000: IT Mill 2001: Millstone library 2006: IT Mill Toolkit 4 Commercial Introduced AJAX based client engine 2007: IT Mill Toolkit 5 GWT integration Open source Apache License 2.0 2008: Michael Widenius invested in IT Mill
History 2009: Vaadin ‘ Vaadin Ltd.’ Version 6 Community website 2010: Vaadin Directory
Vaadin versus GWT Vaadin Google Web Toolkit Server Browser Application logic not exposed Exposed Can use Vaadin & GWT widgets + plugins Only GWT widgets + plugins All Java features available Only what GWT supports No offline-mode Sometimes offline-mode
On the job
Architecture
Deeper architecture
Writing a web application Application Init() MainWindow Layout + Components EventListeners for Components Resources Child Windows Error handling with Notifications
User interface components
Vaadin sampler demo
Basic component features Caption, Description Enabled, Read-Only, Visible StyleName, Icon Width, Height (setFullWidth, setSizeUndefined) Locale
Managing layout HorizontalLayout VerticalLayout GridLayout FormLayout AbsoluteLayout CssLayout CustomLayout
Managing layout HorizontalLayout VerticalLayout FormLayout GridLayout AbsoluteLayout CssLayout
Managing layout CustomLayout
Themes CSS Layouts Built-in Themes Inheritance
Binding components to data Properties in Items Items in Containers Fields & Forms IndexedContainer BeanItemContainer QueryContainer …
Support in development Vaadin Eclipse plugin Vaadin debug window Vaadin Sampler & Directory
Before the demo...
Form
Form
Form bean
Form binding
Basic Form features Generate from BeanItem Header and footer commit() Required, Validator FormFieldFactory
Table
Table
Table
Basic Table features Lazy loading Default sorting Editable Immediate TableFieldFactory CellStyleGenerator ValueChangeListener
Demo
Has no company car?    Show in red CellStyleGenerator Selected?    Show employees of employer :  ValueChangeListener  +  Employee ContainerFilter Show data in form  : ValueChangeListener MainWindow MenuBar
Future (version 7) Redesigned window functionality API rewrite Better URI fragments support Bookmarking Multiple window tabs Form Better layout support Custom fields Automatic bean validation
Future (version 7) New Components Select dialog Confirmation dialog Input dialog Integration MVC push/pull Other Better support for internationalization Discontinue Internet Explorer 6 support
Resources Vaadin refcard http://refcardz.dzone.com/refcardz/getting-started-vaadin Vaadin e-book http://vaadin.com/book Vaadin forum The team behind Vaadin.com
Book of Vaadin
Vaadin refcard
Questions and answers

Introduction to Vaadin