ZK – enterprise Ajax framework

ZK is an open source asynchronous Ajax + Mobile framework which is designed to maximize enterprise operation efficiency and minimize the development cost by enabling the creation of rich graphical user interfaces for Web applications with little programming (basic knowledge of Java, HTML and XUL). It lets developers write Web 2.0-enabled, rich Internet application without needing a single line of JavaScript code.

This framework consists of an Ajax-based event-driven mechanism, over 123 XUL and 83 XHTML-based components, together with its own markup language for designing user interfaces. The mark-up language is very powerful. Instead of using other mark-up languages, ZK has a component based markup language called ZUML. ZK’s AJAX engine consists of both client and server components that communicate with one another.

The most powerful feature of ZK is its rich set of control libraries for user interface development.

ZK supports JSP/JSF/JavaEE/Spring., Ajax Push, and Ajax script in Java/Ruby/Groovy/Python/JavaScript.

Features include:

  • Declarative high level specification of rich (rather than plain HTML) user interfaces. For example the XUL widget set includes support for trees, comboboxes, bandboxes and sliders.
  • Embedding scripting support with Java (Beanshell).. Optional support for other serverside Java scripting in other languages such as JavaScript (Rhino), Ruby (JRuby), Python (Jython) and Groovy.
  • High level Ajax support. User input passes from the browser to the serverside desktop model over Ajax.
  • Event-driven component-based model (similar to desktop programming models).
  • Fast prototyping.
  • Support for creating user interfaces using different patterns. A MVC programming approach can be adopted with all events forwarded to a central controller class. Alternatively event handlers can be defined within the page using zscript. The MVC page approach is analogous to Swing programming and the in-page approach is analogous to DHTML programming on the server.
  • Support for integrating with existing web frameworks via a JSP custom tag library, JSF support and a Servlet Filter. Has support for Spring and Hibernate.
  • Extensible in that programmers can create new custom UI controls. Groups of controls can be re-used as a macro component.
  • Databinding capability via in-page annotations that transparently bind screen controls to the fields of POJOs on the server.
  • Over 200 off-the-shelf state-of-art XUL/HTML-complaint Ajax components.
  • Numerous third party widgets: JFreeChart, JasperReports, Google Maps, FCKeditor, Timeline, Timeplot, ExtJS, Dojo etc.
  • CSS-based skinning, template-based looks and customizable behavior.
  • Drag-and-drop, animation, context menus, and so on.
  • Bookmark management and SEO (Search Engine Optimization) supported.
  • Supports high scalability and availability with serializable user interfaces and a pluggable failover manager.
  • Enterprise support

Website: www.zkoss.org
Support: Blogosphere, GitHub Code Repository
Developer: Potix Corporation
License: GNU Lesser General Public License, version 2.1

ZK

ZK is written in Java and JavaScript. Learn Java with our recommended free books and free tutorials. Learn JavaScript with our recommended free books and free tutorials.

Return to Rich Internet Application Frameworks Home Page | Return to Mobile Application Development Frameworks Home Page


Popular series
Guide to LinuxNew to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux.
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions.
ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information.
Alternatives to Proprietary SoftwareReplace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS.
Linux Around The WorldLinux Around The World showcases events and usergroups that are Linux-related. This is a new series.
DockerGetting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers.
System ToolsEssential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users.
ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
Home ComputersHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years. It can be a bumpy ride.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery.
Android AppsBest Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series.
Programming BooksThese best free books accelerate your learning of every programming language. Learn a new language today!
Programming TutorialsThese free tutorials offer the perfect tonic to our free programming books series.
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.