ZK 8.5.1 release notes

PE/EE Released on Mar. 6, 2018


ZK 8.5.1 is an updated release for ZK 8.5. 8.5.1 comes with 17 new features and 41 bug fixes, such as better spring boot integration, better timezone support, and several security related upgrades.

ZK 8.5 is a major release that takes the best of ZK 8 and continues to push the innovation envelope. A major improvement on MVVM data binding at the client side enlivened pure HTML content with minimal effort. The Fragment component, in combination with Service workers, allows caching and managing offline user data and easier Progressive Web Apps (PWAs) building.

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



Getting Simpler and Richer

New Feature Highlight

  • ZK-3799 - simplify spring boot integration for websockets
  • ZK-3839 - provide a switch to disable caching for ZumlExtendlet
  • ZK-3527 - Timezone issues with historically varying DST and Offsets rules
  • ZK-3793 - support ZK core for Java 9 module system

What's New

  • New Features
    • ZK-3739 - Support to insert text at the current cursor position in a Textbox
    • ZK-3762 - Enhance ContextClassLoaderFactory
    • ZK-3778 - set sclass for slidingtext popup
    • ZK-3793 - support ZK core for Java 9 module system
    • ZK-3797 - Zhtml support html5 tags
    • ZK-3799 - simplify spring boot integration for websockets
    • ZK-3801 - Add support for new components ZK 8/8.5 in zul.xsd
    • ZK-3806 - ValidationMessagesImpl's getters return empty array instead of null
    • ZK-3808 - Provide performance tuning options for meshes
    • ZK-3813 - improve CSP header support
    • ZK-3816 - Support a dirty checking mechanism for a ViewModel's properties, so that users don't need to notify changes by themselves
    • ZK-3819 - lookup license file in context path
    • ZK-3827 - Combobox empty search message
    • ZK-3835 - Improve Tree client ROD rendering method
    • ZK-3839 - provide a switch to disable caching for ZumlExtendlet
    • ZK-3857 - upgrade jackson library
    • ZK-3859 - upgrade commons fileupload

  • Bugs fixed
    • ZK-3228 - issue with panel, dynamic panelchildren and ckeditor
    • ZK-3322 - NPEs when recreating a form using children or model binding
    • ZK-3330 - selected tree item not scrolling into view
    • ZK-3344 - Load binding fire on unrelated notify
    • ZK-3347 - Avoid memory buffering when building hash codes
    • ZK-3371 - Tree performance on IE 11
    • ZK-3527 - Timezone issues with historically varying DST and Offsets rules
    • ZK-3556 - @Transient is ignored in FormProxyHandler
    • ZK-3579 - combobutton not using its defined/available width
    • ZK-3589 - Popup fail to close when clicking outside the topmost area
    • ZK-3625 - Menubar scrollable trigger doesn't exclude invisible items from calculation
    • ZK-3656 - Select all cause exception if no selectable item is rendered yet
    • ZK-3657 - hflex/vflex min with renderdefer
    • ZK-3718 - vlayout sizing issue with vflex child - IE9-11
    • ZK-3726 - Datebox displays the week number incorrectly
    • ZK-3730 - zul xsd doesn't define "disabled" attribute for "tab"
    • ZK-3743 - NPEs while using two event queues with Comet server push
    • ZK-3745 - zul xsd doesn't define "src" attribute for <caption>
    • ZK-3753 - XSD defines "var" and "varStatus" are required
    • ZK-3765 - adding components in @AfterCompose fails binding initialization
    • ZK-3768 - resize while columns are hidden
    • ZK-3776 - Frozen with paging and columns without size definition displayed blank after page change
    • ZK-3782 - new frozen broken scrollbars IE and Edge
    • ZK-3785 - cleanup unused (6.5) images from themes
    • ZK-3789 - Animation onRestore cause redrawn in CKEditor
    • ZK-3794 - Textbox cut the bottom of text
    • ZK-3795 - Progressmeter is not completely filled
    • ZK-3796 - unexpectedly loaded metainfo/zk/build in zpoi.jar causes license checking failure
    • ZK-3800 - a button with a font awesome icon is higher than a default button
    • ZK-3804 - Chrome meshwidget visible="false" column not hidden after ZK-3722
    • ZK-3805 - Websocket NPE when re-directing or refreshing page
    • ZK-3809 - Filedownload name encoding
    • ZK-3810 - Localization doesn't work using ZK 8.5 with WebSockets
    • ZK-3812 - Nested collections bindings with templates stop firing after ZK 3611
    • ZK-3817 - Filedownload on Android not working
    • ZK-3818 - Radiogroup getSelectedItem() cause exception if radio are in subcomponents
    • ZK-3821 - timeout message not localized
    • ZK-3830 - <choose> w/o <otherwise> inconsistent behavior
    • ZK-3831 - initViewModel fails during createComponents on detached parent
    • ZK-3833 - Calendar Popup for Lisbon/Timezone for Jan/1912
    • ZK-3836 - WebSocket JS error in onClose
    • ZK-3840 - fragment component flex error when inside v/hlayout
    • ZK-3866 - popup doClick prevents DOM state update after ZK 3606
    • ZK-3872 - combobox refresh ckeditor
    • ZK-3880 - error on clicking header checkbox of empty listbox

  • Upgrade Notes
    • The ContextClassLoaderFactory interface adds a new method: ClassLoader getContextClassLoaderForName(String) that breaks compatibility. If you have a customized class loader factory, please implement this new method.
    • The default converters for Binding Parameter and Service Parameter are now GsonConverter. And now Jackson-databind is an optional dependency.