This book is intended for software developers who use, or are considering to use, Vaadin to develop web applications.
The book assumes that you have some experience with programming in Java, but if not, it is at least as easy to begin learning Java with Vaadin as with any other UI framework. No knowledge of AJAX is needed as it is well hidden from the developer.
You may have used some desktop-oriented user interface frameworks for Java, such as AWT, Swing, or SWT, or a library such as Qt for C++. Such knowledge is useful for understanding the scope of Vaadin, the event-driven programming model, and other common concepts of UI frameworks, but not necessary.
If you do not have a web graphics designer at hand, knowing the basics of HTML and CSS can help so that you can develop presentation themes for your application. A brief introduction to CSS is provided. Knowledge of Google Web Toolkit (GWT) may be useful if you develop or integrate new client-side components.
Organization of This Book
The Book of Vaadin gives an introduction to what Vaadin is and how you use it to develop web applications.
Part I: Introduction
The chapter gives an introduction to the application architecture supported by Vaadin, the core design ideas behind the framework, and some historical background.
This chapter gives practical instructions for installing Vaadin and the reference toolchain, including the Vaadin Plugin for Eclipse, how to run and debug the demos, and how to create your own application project in the Eclipse IDE.
This chapter gives an introduction to the architecture of Vaadin and its major technologies, including AJAX, Google Web Toolkit, and event-driven programming.
Part II: Server-Side Framework
This chapter gives all the practical knowledge required for creating applications with Vaadin, such as window management, application lifecycle, deployment in a servlet container, and handling events, errors, and resources.
This chapter essentially gives the reference documentation for all the core user interface components in Vaadin and their most significant features. The text gives examples for using each of the components.
This chapter describes the layout components, which are used for managing the layout of the user interface, just like in any desktop application frameworks.
This chapter gives instructions for using the visual editor for Eclipse, which is included in the Vaadin Plugin for the Eclipse IDE.
This chapter gives an introduction to Cascading Style Sheets (CSS) and explains how you can use them to build custom visual themes for your application.
This chapter gives an overview of the built-in data model of Vaadin, consisting of properties, items, and containers.
This chapter gives documentation for the SQLContainer, which allows binding Vaadin components to SQL queries.
This chapter provides many special topics that are commonly needed in applications, such as opening new browser windows, embedding applications in regular web pages, low-level management of resources, shortcut keys, debugging, etc.
This chapter describes the development of Vaadin applications as portlets which you can deploy to any portal supporting Java Portlet API 2.0 (JSR-286). The chapter also describes the special support for Liferay and the Control Panel, IPC, and WSRP add-ons.
Part III: Client-Side Framework
This chapter gives an introduction to creating and developing client-side applications and widgets, including installation, compilation, and debugging.
This chapter describes how to develop client-side applications and how to integrate them with a back-end service.
This chapter describes the built-in widgets (client-side components) available for client-side development. The built-in widgets include Google Web Toolkit widgets as well as Vaadin widgets.
This chapter describes how to integrate client-side widgets with their server-side counterparts for the purpose of creating new server-side components. The chapter also covers integrating JavaScript components.
Part IV: Vaadin Add-ons
This chapter gives instructions for downloading and installing add-on components from the Vaadin Directory.
This chapter gives the developer documentation of the Calendar add-on component.
This chapter documents the use of the Vaadin Charts add-on component for interactive charting with many diagram types. The add-on includes the Chart and Timeline components.
This chapter documents the use of the Timeline component part of the Vaadin Charts add-on.
This chapter gives documentation of the JPAContainer add-on, which allows binding Vaadin components directly to relational and other databases using Java Persistence API (JPA).
This chapter gives examples and reference documentation for using the Vaadin TouchKit add-on for developing mobile applications.
This chapter gives the complete documentation of using the Vaadin TestBench tool for recording and executing user interface regression tests of Vaadin applications.
Mythological background of the name Vaadin.