ICEfaces EE 4.2.0.GA Release Notes

Table of Contents

ICEfaces EE 4.2.0.GA Release Notes

July 26th, 2017

About This Release


ICEfaces EE 4.2.0.GA is a certified ICEfaces Enterprise Edition release.

ICEfaces EE 4.2.0.GA includes all the new features and improvements that were introduced in the ICEfaces 4.2.0 open-source release, plus over 70 additional stabilizing fixes, ICEfaces EE-exclusive improvements, and verification on and support for additional server platforms.

Combined, this release includes:

  • 6 new ACE and ICECORE components (incl. ace:drawerPanel, ace:schedule, ace:colorEntry, and icecore:repeat), 14 new features, 70 improvements, and more than 200 bug fixes.
  • New View Root State Manager (EE-exclusive!) that completely avoids unnecessary state saving and restoration of the server-side component tree resulting in significantly reduced server CPU utilization and memory consumption.
  • New platform certifications for JBoss EAP 7, WAS 9.0, and Wildfly 10.1.
  • Compatibility with JSF 2.3.
If you are not already familiar with the changes introduced in ICEfaces 4.2, see the ICEfaces 4.2 Release Notes prior to using this release.

Contents

Downloads


ICEfaces EE is available in both binary and source download bundles from the www.icesoft.org download page.

Changes in EE 4.2.0.GA


Key improvements and EE exclusive features are listed below.

Additional Platform Support

Support for the following platforms has been added in this release:

  • IBM WebSphere 9.0
  • JBoss EAP 7
  • RedHat WildFly 10.1
  • Mojarra JSF 2.2.14
  • Myfaces JSF 2.2.9
  • Mojarra JSF 2.3

ACE Components

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

New Components:

  • JIRA - New ace:drawerPanel component
  • JIRA - New ace:listExporter component for exporting ace:list data
  • JIRA - New ace:scheduleExporter component
  • JIRA - Added form "Reset" capability to input components

Enhanced Components:

  • ace:accordion
    • JIRA - Enhanced to support using an icecore:repeat to define the accordion's children/contents.
  • ace:buttonGroup
    • JIRA - New 'layout' attribute for specifying the orientation in which the buttons should be rendered.
  • ace:checkboxButtons
    • JIRA - New 'layout' attribute for specifying the orientation in which the buttons should be rendered.
  • ace:column
    • JIRA - allow 'filterBy' attribute to contain multiple values. ace:dataTable columns can now be filtered on multiple values per column, instead of a single value per column.
  • ace:contextMenu
    • JIRA Now supports defining multiple targets for the same component.
  • ace:dataExporter
    • JIRA - Added support for .xlsx format exports.
  • ace:dataTable
    • JIRA - Added emptyMessage and emptyMessageFacet attributes that display when no data exists.
    • JIRA - Optimized data loading in lazy data-loading mode to minimize the number of times the 'load' method is called.
    • JIRA - Support growing total table width when user resizes right-most column.
  • ace:dateTimeEntry
    • JIRA - Added ability to define multiple ranges of min/max dates.
  • ace:fileEntry
    • JIRA - Added browser-level title tooltip for input field in IE browsers.
  • ace:graphicImage
    • JIRA - New 'library' attribute. Can be used in conjunction with the 'name' attribute to lookup the resource request path in cases where the 'value' or 'url' attributes are not defined.
  • ace:gMap
    • JIRA - New support for displaying multiple services on the same map
  • ace:list
    • JIRA - New filtering and sorting capabilities
  • ace:radioButton(s)
    • JIRA - New 'layout' attribute for specifying the orientation in which the buttons should be rendered.
  • ace:tooltip
    • JIRA Now supports defining multiple targets for the same component.

MOBI Components

See the MOBI Components Wiki for reference documentation on these components.
Compatibility Note
As of January of 2017 the BridgeIt project has been deprecated. As a result, the following MOBI components that relied on the BridgeIt app. to function have been removed from ICEfaces as of the 4.2 release:
  • mobi:augmentedReality
  • mobi:augmentedRealityLocations
  • mobi:augmentedRealityMarkers
  • mobi:camcorder
  • mobi:cloudPush
  • mobi:fetchContact
  • mobi:geoTrack
  • mobi:scan
  • mobi:sms

Core Framework

  • JIRA - New View Root State Manager that completely avoids unnecessary state saving and restoration of the server-side component tree resulting in significantly reduced server CPU utilization and memory consumption. See the related Wiki topic for details.

ICEpush EE

See the ICEpush Wiki reference documentation.
Compatibility Note
As of January of 2017 the BridgeIt project has been deprecated. As a result, support for Cloud Push, that relied on the BridgeIt app. to function, has been removed from ICEfaces as of the ICEfaces EE 4.2.0.GA release.
  • JIRA - Removed Cloud Push support

EPS (Enterprise Push Server)

See the EPS Wiki reference documentation.

EPS now supports the following platforms for stand-alone EPS deployments:

  • JBoss EAP 7
  • IBM WebSphere 9

Load Testing

See the Load Testing Wiki Topic for EE-4.x.
  • The ICEfaces bridge protocol requirements have changed since ICEfaces EE 3.3 requiring existing test scripts to be updated to reflect the new requirements.

Samples

  • ICEfaces Desktop and Mobile Showcase Sample Application
    • JIRA - Move the ace:list demos into their own category
    • JIRA - Replaced sporadic use of "h:" components in demos with ace: variations.
    • JIRA - cleaned up old un-used references in the code.
    • Refinements and bug fixes.
  • Emporium
    • JIRA - Added ace:colorEntry to the Emporium sample
    • Refinements and bug fixes.

JSF Runtimes

  • Mojarra JSF has been updated to v2.2.14 in this release.
  • MyFaces JSF has been updated to 2.2.12 in this release.
  • Compatible with Mojarra JSF 2.3.
Change Logs
For a complete list of all changes included in this release (since the ICEfaces 4.2 open-source release), see the related JIRA Change Log:


Key Features


ICEfaces Enterprise Edition includes a suite of enterprise software and documentation that will enhance your ICEfaces project from development, through testing and deployment. In addition to high quality certified software and tools, ICEfaces EE includes direct access to the extensive knowledge and expertise of our technical team.

ICEfaces-EE provides the following additional exclusive features in addition to all of the features available in ICEfaces:

Certified Software

ICEfaces EE has been certified against a wide-range of supported commercial and open-source application servers, portal-containers, and 3rd-party frameworks. See the Supported Platforms section for details.

Enterprise Push Server (EPS)

The [Enterprise Push Server] extends the standard Ajax Push capabilities of open-source ICEfaces with these critical enterprise-grade features:

  • Multi-application Support.  EPS supports concurrent use of multiple ICEfaces push-enabled applications on the same application server (host-name) in the same client browser.  The ICEfaces open-source ICEpush library can only support a single push application from the same server (host-name) in the same browser at one time.
  • Distributed management of blocking push connections across a cluster for increased application scalability.
  • Load-balancing of Ajax Push connections across a cluster for increased application scalability.
  • Fail over of Ajax Push connections across a cluster for high application availability.
  • Asynchronous Request Processing (ARP) integration for increased Ajax Push scalability.

Core Framework Extensions

ICEfaces EE includes the Core Framework Extensions library that can improve the ICEfaces experience on EE-certified platforms:

  • Embedded HTML Compatibility for Facelets Applications - Configurable support for wrapping HTML markup in Facelets pages into components at runtime.
  • View Root State Manager - Completely avoids unnecessary state saving and restoration of the server-side component tree resulting in significantly reduced server CPU utilization and memory consumption.

Sample Applications

  • [EPS Poller Application] - Demonstrates an Ajax Push application using EPS with various deployment scenarios, including fail-over support in a clustered deployment.

Functional & Load Testing Documentation, Tutorials, and Reference Materials

The ICEfaces EE Wiki includes extensive documentation, tutorials, and reference materials that clearly explain and demonstrate successful testing techniques for use with ICEfaces.

Deployment Guides

The ICEfaces EE Wiki provides extensive configuration and deployment guides for all supported application server and portal container platforms. In addition, server-specific step-by-step instructions are provided to enable fast, successful deployments for each of the following deployment scenarios:

  • Stand-alone server
  • Stand-alone server w/ EPS
  • Clustered server w/ EPS (including fail-over)

Migration Guide


An ICEfaces 3 to ICEfaces 4 Migration Guide is available for those wishing to migrate their existing ICEaces 3.x applications to ICEfaces 4.x.


Supported Platforms


Java VMs

  • Java 6 - 8

JSF Runtimes

  • Oracle Mojarra JSF 2.2.1-2.2.14 (2.2.14 included).
  • Apache MyFaces JSF 2.2.x (2.2.12 included).
  • Oracle Mojarra JSF 2.3.

Browsers

  • Apple Safari 9, 10
  • Google Chrome 55
  • Microsoft Edge (Windows 10)
  • Microsoft Internet Explorer (IE) 8 - 11 (MOBI Components require IE 10+)
  • Mozilla Firefox 54, ESR 52

Mobile Browsers

  • Apple iOS 9.x, 10.x (Safari)
  • Google Android 5.x, 6.x (Chrome)

Application Servers

Specific installation and configuration information for some platforms can be found in the [Server Configuration Appendices].

  • Apache Tomcat 7, 8
  • IBM WebSphere AS 8, 8.5, 9.0
  • Jetty 9
  • Oracle Glassfish v4
  • Oracle WebLogic Server 12c
  • RedHat JBoss EAP 6.3, 7.0
  • RedHat WildFly 8.2, 9.0, 10.1

Portal Containers

  • Liferay Portal 6.x

When using Liferay, specific versions of the Liferay Faces Bridge must be used for each Liferay release version. See the Liferay Faces Version Scheme page for details.

Enterprise Push Server (EPS) Supported Platforms

Server Stand-alone Clustered
Apache Tomcat 7/8 Yes Yes 1
IBM WebSphere AS 8.5
Yes
Yes
IBM WebSphere AS 9.0
Yes
 
Jetty 9 Yes  
Oracle GlassFish 4.2 Yes  
Oracle WebLogic Server 12c
Yes
Yes
RedHat JBoss EAP 6.3
Yes
Yes
RedHat JBoss EAP 7.0
Yes
Yes
RedHat WildFly 8.x
Yes Yes

1 Requires ActiveMQ 5 for JMS support


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, ace:list, or ice:selectOneMenu.

ICEpush

  • ICEpush (icepush-ee.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).

MyFaces JSF

  • Session State Serialization
    • By default, MyFaces serializes the state of the view into the session on every single request. While this allows the state of the view to be restored for that particular request, it can have an impact on performance as well as components that may not be designed for it. For these reasons we recommend to set the following context parameter in your application:
       <context-param>
              <param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
              <param-value>false</param-value>
          </context-param> 
    • See JIRA for a detailed explanation.

Browsers

  • The following features rely on HTML5 support in the browser, and are not supported on IE8 or IE9:
    • All MOBI components
    • ace:gmap (Google Maps doesn't support IE8 or IE9)
    • icecore:navigationNotifier
    • ace:audioPlayer and ace:videoPlayer
    • ace:textEntry "secret" mode is not supported on IE8.
    • The transition animation effects are not supported on IE8 browsers to maintain performance and reliability.
  • 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).

Application Servers

  • JBoss EAP 6.3, WebLogic 12c, WebSphere 8.5 (JEE 6 Platforms)
    • It is required to have a supported Mojarra JSF 2.2 runtime installed and/or deployed with your application. This may require updating the JSF runtime libraries depending on which JSF version is currently installed in the server.
    • Detailed instructions on how to deploy your application along with updated JSF libraries are provided in the ICEfaces EE Wiki [Server Configuration Appendices].

Portal Containers

  • Liferay 6
    • Using the ACE Components with Liferay can result in CSS styling conflicts between the Liferay themes and the ACE Component theme, as they both utilize the jQuery ThemeRoller styling scheme. It may be necessary to customize the themes to avoid conflicts when using the ACE components with Liferay. See the Custom ACE Styles for Liferay Portal Wiki topic for details.

Sample Applications

  • ICEfaces Showcase Portlets
    • The ICEfaces Showcase Portlets are intended to be used with a single instance of each demo portlet on the same page at one time. Adding the same demo portlet to the page multiple times will result in component failures.
    • This issue is related to the id-usage and structure of the demo application itself, and is not an inherent limitation of ICEfaces or the components themselves.

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


Please report any issues with this release to ICEsoft Customer Support.

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

© Copyright 2017 ICEsoft Technologies Canada Corp.