ZK 6.5.6 release notes

PE/EE Released on May 06, 2014


ZK 6.5.6 is a maintenance release for bug fixes and now supporting Polish language.

ZK 6.5 series focuses on taking developers to achieve real device transparency in one codebase and component set, exploring the area of combined desktop & tablet UI and touch experiences. Introducing responsive design and responsive components to always fit your device screen resolution and tablet-specific user interaction methods such as swiping and device orientation detection which are done automatically to save developers time, effort and to increase massive productivity.

Please note that this version is released for PE/EE customers & ZOL users.



Behind the scenes

  • To read about the philosophy behind ZK 6.5, please visit this blog

Feature Updates

  • 120+ off-the-shelf Ajax 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 (java.lang.Comparator).
    • 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 expression and $#,##0.
    • 100% Java API of Google Maps, CKeditor, and Timeline components.
  • Event-driven, server-centric model
    • Ajax requests, application notification, and server push are all managed as events
    • Event Queue shields developers from the complexity of Ajax and server push, such as multi-thread programming
    • All events are processed at the server. No hurdle to communicate between clients and servers.
    • 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 HTML pages.
    • Powerful yet intuitive control flow by the if, unless and forEach attribute.
    • Scripting in EL expressions and your favorite scripting languages, include but not limited to Java, JavaScript, Ruby and Groovy.
    • Hot changes and updates without restarting your Web applications.
    • Annotations that allow a page to access 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.
    • POJO components supporting interfaces and clustering. Easy to instantiate and manipulate directly with pure Java, or injected and managed by an AOP framework, such as Spring
    • Macro components. Develope full-featured new component by using other ZUML pages.
    • Inheritable customization. Developing a new component by extending existent components.
    • 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, JavaScript, 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.

What's New

  • New Features
    • ZK-2227: ZK Messages support Polish lang
  • Bugs fixed
    • ZK-1746: Chosen box with huge data - Performance issue
    • ZK-2040: The submenu has no space to unfold to the right and needs to open on the left side.
    • ZK-2056: XSS Vulnerability in AuUploader
    • ZK-2080: Chosenbox with ListSubModel not working if using template to render data
    • ZK-2091: Copy-paste large value in doublebox get error.
    • ZK-2105: EventQueue still sending request even it is removed by EventQueues.remove() API when using PollingServerPush
    • ZK-2111: Button fileupload sometimes not work when using strong CSS font style
    • ZK-2116: possible XSS Vulnerability for Listcell
    • ZK-2119: Second level menupopup opened and closed immdiately when moving mouse in IE
    • ZK-2127: Annotation data binding doesn't work properly with ZK 6.5.3 and later
    • ZK-2138: vflex="1" not working properly with groupbox
    • ZK-2140: Multiple select with Shift key does not work properly
    • ZK-2143: Filedownload should support chinese file name
    • ZK-2169: CometServerPush.getStartScript() should include org.zkoss.zkex.ui.comet.smartconnection.disabled in ee version
    • ZK-2172: Biglistbox with frozenCols missing data
    • ZK-2178: NullPointerException showed when biglistbox doesn't provide any MatrixModel
    • ZK-2185: Setting listitems draggable&droppable makes inner listbox not showing correctly in mold=select
    • ZK-2193: Listbox will scroll in horizontal direction when navigation by keyboard
    • ZK-2200: Navigate combobox drop down list by "down" key not work correctly if contains empty string
    • ZK-2210: improve zk portlet 2 integration
    • ZK-2211: Popup position not properly fixed in listbox
    • ZK-2213: Possible problem with invalidate in groupbox for mobile version
    • ZK-2214: [IE8] grid frozen no show horizontal scroll bar when column visible = "false"
    • ZK-2231: Invisible window inside vbox cause js error when calculating flex size
    • ZK-2247: nested iframe reloading content when detached parent window
    • ZK-2267: Popup is only sometimes "visible" when it is opened