Vaadin - Architecture


In this chapter, you will learn in detail about Vaadin architecture. Vaadin provides two modules for website development − one for server side and another for client side. The image given below illustrates the entire runtime environment of Vaadin framework.

Vaadin Architecture

You will have to understand the following points when dealing with Vaadin runtime configuration −

  • Vaadin client side engine is used to render the output or user action through basic HTTP method and a browser. This generation of representational block is totally automated. You will have to code only the back end, all the mark ups will generate automatically.

  • Server side handles the business part that receives the event based request and prepare the response for the client. Communication between two tiers occurs through HTTP protocols.

  • Terminal Adapter receives the request and processes the same using server side UI component, which is a server based JAVA class to generate the response to be rendered using another component GWT. This is also called as Vaadin Servlet API, which extends the properties of servlet, receives requests from different clients, and determines the user’s response.

  • Vaadin uses GWT (Google Web Tool Kit) and hence renders faster output and enhanced scalability than a conventional Java Script based application.

  • Vaadin uses JSON as it is faster than conventional XML based application.

  • Separate components namely CSS and Theme can be used in order to provide wonderful client side response. This component basically separates appearance from representation.

  • Data Binding module provides the APIs to connect and manipulate with the DB if required.