ZK 3.6.2 release notes
Released on June 23, 2009.
Getting Simpler and Richer
New Feature Highlight
- Improved performance
- New include modes
- Support for Google App Engine
- New Features
123 XUL and 83 HTML off-the-shelf components.
Tabbox, grid, listbox, tree, menu, combobox, bandbox, datebox, chart,
hbox, vbox, window, slider, paging, audio, image, timer, include, iframe...
Drag-and-drop supported by all components, such that users can drag
components and drop them to any other or particular set of components.
Context menus and customizable tooltips supported by all components,
such that a menu or any popup appears when user click, right-click or
move the mouse over a component.
Customizable sorting of listbox, grid and children of any component
with 100% Java codes (
Auto-completion for combobox.
Load on demand with writing Java codes.
Live data for listbox.
Grids, listboxes and trees with sizable columns.
All components are cloneable and serializable.
Validation and formatting for any input components, such as regular
100% Java API of Google Maps,
and Timeline components.
Event-driven, server-centric model
More than 20 events are supported:
All events are processed at the server. No hurdle to communicate between clients
All events are synchronized. No racing condition to worry about.
ZK User-interface Markup Language (ZUML).
Rich user interface could be designed in ZUML as simple as authoring
- Powerful yet intuitive control flow by the
Scripting in EL expressions and your favorite scripting languages,
include but not limited to Java,
Ruby and Groovy.
Hot changes and updates without restarting your Web applications.
Annotations that allow a page to acess database with zero Java codes.
Browser history management.
Add states to browser's back button history. Then, users can bookmark
and use the back and forward button to navigate different
states of the same ZK desktop.
Simple yet boundless component model.
Macro components. Developing a full-feature new component
by using another ZUML pages.
Inheritable customization. Developing a new component by extending
Seamlessly and easily to encapsulate pure-client components as ZK
components with 100% Java API.
Customizing components with pre-compiled Java classes, or by scripting in
your favorite scripting languages,
include but not limited to Java,
Ruby and Groovy.
The choice is yours.
Simple yet flexible threading model.
Thread-safe component handling.
True server-side Modal dialog.
Suspend and resume event listeners freely.
100% Customizable User-Interface factory.
Loading ZUML pages not only from Web contents but also any repository
such as database.
Customizing the features of sessions, desktops and pages.
- New Features:
- 2787715: Messagebox shall recognize linebreak
- 2789884: Include supports macro (page-less) mode
- 2790411: A way to use createComponents in the working thread
- 2788162: Support the script directive ( )
- 2790025: supports more readable format than arg0, arg1...
- 2790391: supports more readable format than arg0...
- 2790392: supports more readable than arg0, arg1..
- 2788752: Introduce beforeParentChanged, beforeChildAdded...
- 2790402: Servlets support utility to return normalized path
- 2790420: Allow specify binder's name in AnnotateDataBinderInit
- 2790441: Enhance GenericAutowireComposer to wire vars before onCreate
- 2787711: Hope paging setTotalSize() won't affect inputing active page
- 2790669: zk should provide a way to load i18n prop. files by zk.xml
- 2800849: Support Google App Engine
- 2803894: GenericComposer supports clustering (Serializable)
- 2800446: A way to enable or disable the stackup in JS
- Bug fixes:
- 2784298: Missing properties in XSD for panel 
- 2784569: Missing src property for menuitem component in XSD
- 2784736: On demand Menupopup items on IE looks transparent
- 2787077: Listbox-Paging was broken with fix for #2782751
- 2787785: Wrong Slovenian locale (Singhalese -> Slovenian)
- 2787876: a bug of textbox with constraint
- 2788618: datebox with constraint="no future"
- 2788875: Https.getOriginPathInfo() & getOriginQueryString() exchange
- 2789915: Click the button to reset the hoverImage will fail
- 2789990: listbox behaves odd in IE7
- 2790393: Forward event listener shall be called immediately
- 2790417: load-after and save-after shall be the last processed
- 2791499: SerializableUiFactory causes NPE when Web app stops (Tomcat)
- 2792105: Highlight effect not revert if dragging listitem to non-droppable area
- 2794205: IE6 the errorbox moves away
- 2794303: panel cannot contain a caption and a title
- 2794714: Bug
- 2795318: Context menu stops working on modal windows
- 2796144: Datebox with format="MM/dd/yyyy hh:mm a" loses am/pm
- 2796335: Borderlayout+Tabbox+Tree will cause Tab disappear
- 2796461: The height of datebox's popup should count on its content
- 2796829: Include onCtrlKeys attribute in bandbox XSD
- 2797773: Copy / Paste on NumberInputElement not working
- 2799258: Increasing col's width causes a unnecessary scrollbar (IE)
- 2799334: focus doesn't get back from popup
- 2800851: BSHInterpreter doesn't serialize variables defined in Window
- 2800879: Rowcomparator NOT Serializable
- 2801878: Missing properties in radiogroup and radio components in XSD
- 2803344: Executions.createComponents cannot handle ~./x?y
- 2803575: bindingArgs shall merge extra binding arguments together
- 2807475: Focus problem with menupop & textbox in ie
- 2807870: ctrlKeys missing from XSD of bandbox
- 2807657: Applet and CodeBase
- 2806116: Javadoc misleading on TypeConverter interface
- 2809040: The forward condition doesn't accept multiple values
- 2809054: Unable to remove the forward condition in forward event