An Introduction to ZK's Server client Fusion Architecture

From Documentation
Revision as of 06:33, 29 October 2010 by Tomyeh (talk | contribs)

Stop.png This article is out of date, please refer to http://books.zkoss.org/zkessentials-book/master/ for more up to date information.


Architecture-s.png

A ZK application runs at the server, seamlessly accessing the backend resources, and then manipulating the ZK components to display the relevant UI. The synchronization of the states of the ZK components between the browser and the server is done automatically by ZK.

A ZK component (or more precisely, a UI object) consists of a component and a widget. A component is a Java object running at the server controlled by your application. A widget is a JavaScript object running at the client to interact with the user. How to synchronize the states and distribute the load is really up to the component. ZK Client Engine and Update Engine work together to provide an elegant and robust channel to simplify the implementation.

Furthermore, the application can add optional client-side functionality, such as handling event at the client, customizing widget's behavior, and even instantiating widgets without the corresponding components at the server. ZK is the only framework to enable the seamless fusion ranging from pure server-centric, to pure client-centric.



Last Update : 2010/10/29

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.