ICEfaces 4.3.0 Release Notes

Table of Contents

ICEfaces 4.3.0 Release Notes

July 12th, 2018

Contents

About This Release


ICEfaces 4.3.0 is an official ICEfaces feature release.

Release Highlights:

  • New ace:borderLayout Component (live demo)
    • Container with up to five different regions (north, south, east, west and center) which can be user collapsible, expandable, closable, and resizable.
  • New ace:dashboard Component (live demo)
    • Container that can contain panes with arbitrary content. Each pane is resizable, draggable/moveable and closable.
    • The panes are arranged in a grid with fixed base dimensions (in pixels), and they can span multiple rows and/or columns in the grid, as specified or as modified by the user. When a pane is moved or resized the grid automatically rearranges itself to accomodate the new pane position or size.
  • New ace:triStateCheckbox Component (live demo)
    • Support "checked", "unchecked", and "indeterminate" states.
  • Support for Mojarra JSF 2.3 (JSF 2.3.5 included).
  • Requires JDK 1.8 runtime.
  • Over 50 other improvements and bug fixes.

Downloads


ICEfaces is available for download in the following formats:

What's New in 4.3.0?


ACE Components

See the ACE Components Wiki for reference documentation on these components.

New Components:

  • New ace:borderLayout Component (live demo)
    • Container with up to five different regions (north, south, east, west and center) which can be user collapsible, expandable, closable, and resizable.
  • New ace:dashboard Component (live demo)
    • Container that can contain panes with arbitrary content. Each pane is resizable, draggable/moveable and closable.
    • The panes are arranged in a grid with fixed base dimensions (in pixels), and they can span multiple rows and/or columns in the grid, as specified or as modified by the user. When a pane is moved or resized the grid automatically rearranges itself to accomodate the new pane position or size.
  • New ace:triStateCheckbox Component (live demo)
    • Support "checked", "unchecked", and "indeterminate" states.

General Improvements:

  • ACE components no longer have a dependency on UISeries, instead they leverage UIData for iteration.
  • ace:tabSet, ace:accordion, and ace:panelStack now extend namingContainer.
  • The Font-Awesome library used by the ACE components for icons was updated to v4.7.

Enhanced Components:

"Security Improvements"
A potential JavaScript injection vulnerability in the ace:fileEntry and ace:gmap components has been removed in this release.
  • ace:chart
    • New support for "showTicks" and "showTickMarks" on chart axis.
    • The jqPlot.js library used by this component has been updated to v1.0.8.
  • ace:dataTable
    • New support for keyboard row and cell navigation
    • Improved support for using pinned columns in combination with multiple row column headers
    • Re-implemented the showcase "Find" demo to avoid using component binding.
  • ace:dateTimeEntry
    • Added capability to highlight specific dates in the calendar.
  • ace:fileEntry
    • Support for client-side validation of file types.
  • ace:gmapMarker
    • Added ability to update the location of marker when the user drags it to a new location.
  • ace:list
    • New "delete" ace:ajax event.
    • Added source and destination attributes to move event.
    • Improved keyboard navigation for ace:list and ace:listControl.
  • ace:menuItem
    • Added support for JSF h:link functionality, including "outcome" attribute and f:param
  • ace:resizable
    • Added "disabled" attribute.
  • ace:schedule
    • Added ARIA support to the entire component.
    • Added localisation support to be able to render labels in different languages.
    • Added mode to autodetect client time zone.
    • Added ability to click on the date in the header to popup a date selection calendar to quickly navigate to a future/past date.
    • Fixed styling issues when inside ace:tabset.
    • Fixed behaviour in event details dialog that occurs if the end times aren't selected but the day is, and the start times are selected, the end times are updated but the end day is updated as well, even if it had already been selected by the user.
    • Fixed issue with not preserving the selected date across view mode changes
    • Rendered all-day events in chronological order.
    • Improved unload function to remove all event listeners.
    • Various UI improvements
    • Added 'resizableSideBar' attribute to make resizing optional.
    • Added tabindex to the component controls (next, prev buttons) so they can be tabbed through and add listeners to activate those buttons by pressing the space bar or the enter key.
    • Added built-in controls to change the view mode.
    • Autoscroll to the first event in the time grid, in week and day views.
    • Added reset button in edit controls.
  • ace:tableConfigPanel
    • Added more granular control for allowing configuration of specific columns in ace:tableConfigPanel.
  • ace:tabSet
    • Add new 'scrollableTabs' attribute for scrolling tabs support.

ICEfaces Framework

See the Core Framework Wiki for reference documentation on these components.
  • ICEfaces 4.3 now supports JDK 1.8 through 10.
  • ICEfaces 4.3 is certified on JSF 2.3.

Samples

  • ICEfaces Showcase
    • All new demos for new components and significant enhancements.

JSF Runtimes

  • Mojarra JSF has been updated to v2.3.5 in this release.
  • MyFaces JSF has been updated to 2.3.1 in this release.
Change Log
For a complete list of all changes in this release, see the related JIRA Change Log.

Supported Platforms


JSF Runtimes

  • Oracle Mojarra JSF 2.2.14 - 2.3.5 (2.3.5 included).
  • Apache MyFaces JSF 2.2.x - 2.3.1 (2.3.1 included)

Java VM

  • Java 8 (1.8) - Java 10 (10.0)

Browsers

  • Chrome 67
  • Edge
  • Firefox 60
  • Safari 11

Mobile Browsers

  • Apple iOS 9.x - 11.x (Safari)
  • Google Android 6.x - 8.x (Chrome)

Application Servers

  • Apache Tomcat 8.5, 9.1
  • Oracle Glassfish 5.0
  • RedHat WildFly 12.0

Known Issues


The following section describes the most commonly encountered known issues with this release:

General

  • Client state saving mode is not supported by ICEfaces - it is required to use SERVER state saving mode.
  • It is required to specify "h:head" and "h:body" tags in your ICEfaces application pages.
  • Applications must avoid the use of "javascript: void(0)" in browser DOM event handlers as this technique causes the "onBeforeOnload" event handler to be called in IE, which results in the ICEfaces bridges shutting down (thinking that the page is being navigated away from).

deltaSubmit

  • The following standard "h:" components are not supported by the deltaSubmit feature (due to a problematic rendering technique that they utilize):
    • h:selectOneMenu
    • h:selectManyMenu
    • h:selectOneListbox
    • h:selectManyListbox
  • The work-around is to use similar alternative components instead, such as ace:simpleSelectOneMenu, or ace:list.

ICEpush

  • ICEpush (icepush.jar) asynchronous update support is limited to a single ICEfaces application per host-name/server.
    • Viewing multiple ICEfaces applications in the same browser from the same host server concurrently will result in only one of the applications having functional push capabilities.
    • Support for pushing asynchronous updates to multiple ICEfaces applications from the same server/host-name requires the use of the Enterprise Push Server (EPS), which is included in ICEfaces EE (Enterprise Edition).
    • This is necessary because the browser cannot support multiple concurrent push connections, so all push traffic must be multiplexed at a single point on the server.

Browsers

  • iOS Safari Browser
    • Window Scope functionality is restricted when running on the iOS variant of the Safari browser. The iOS Safari browser does not fire the "beforeunload" event when a page is unloaded. This interferes with ICEfaces Window scope tracking that relies on the mentioned event as noted below:
      • Using redirect navigation will result in a new Window scope instance being created for the target page of the redirect. The best workaround for this issue is to use forward navigation (where the redirect tag is not used in the navigation rule) instead. This will ensure that the window state is not lost (see ICE-11301).
      • Window scope instances will not be proactively cleaned up when the window is closed, but will be cleaned up when the session expires (see ICE-10326).

IDE Support

  • ICEfaces 4 does not require specialized IDE integration bundles, but rather can be used directly with leading JSF 2.2-supporting IDEs.
  • IDE tutorials are available to explain the steps required to configure your NetBeans or Eclipse IDE projects for ICEfaces 4: IDE Tutorials for NetBeans and Eclipse

3rd Party Libraries


The license and version information for all required/included 3rd Party libraries for this release is available here.

Support


Open source community support is available at http://www.icesoft.org.

The ICEfaces Community Forums are available for questions, comments, or general discussions regarding ICEfaces.

Commercial support agreements are also available.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

© Copyright 2018 ICEsoft Technologies Canada Corp.