Thursday, November 24th, 2005

ZK Released. New Ajax/XUL Framework

Category: Java, JavaScript, Toolkit

A new Ajax/XUL framework named ZK has been released.

ZK is designed to enable Web applications to have both the rich user experiences and the simple programming model. ZK includes an AJAX-based event-driven engine to automate interactivity, and a rich set of XUL-based components.

With ZK, you represent your application in feature-rich XUL components, and manipulate these components by listening to events triggered by users, as you did for years in desktop applications. Your users get the same engaged interactivity and responsiveness as a desktop application, while your development remains the same simplicity as that of desktop applications.

The framework runs in a Java servlet container, and you can use Java (or BeanShell!) to script the applications on the server side.

ZK Event Model

ZK has a built-in event model, and supports Suspend, Resume, and Modal Dialogs.


if ("Are you ready for some football?", 
                    Messagebox.QUESTION) == Messagebox.YES)

XUL Components

ZK uses a form of XUL with Java as the scripting language. They call these files ZUL, and you can build ZUL pages which are interpreted at run-time, and the component is an instance of a specific Java class. This means that you could programatically create instances of components:

<window title="XUL Rule">
  I'm a lumberjack, and I'm OK.
  <button label="Lumber" onClick="'Hi!')"/>

could be written as...

new Label("Lumber").setParent(window);



Posted by Dion Almaer at 12:32 am

3.5 rating from 11 votes


Comments feed

A nice set of effects! What’s missing though is a short tutorial on how to set up the backend (java beans). For people coming from the typical Apache/mysql/php background this is usually the part where they give up due to lack of good documents ;)

Comment by Alex — November 24, 2005

It is clear and accurate.

In the next release (targeting next Friday), ZK will support XHTML pages directly. For example,

However, the script element will be renamed to zscript to avoid conflict HTML’s script tag (though it could be resolved by namespaces)

Comment by Tom Yeh — November 26, 2005

Leave a comment

You must be logged in to post a comment.