ICEfaces 2.0.0 RC1 Release Notes

You are viewing an old version (v. 3) of this page.
The latest version is v. 7, last edited on Dec 11, 2010 (view differences | )
<< View previous version | view page history | view next version >>

ICEfaces 2.0.0 RC1 Release Notes

December 10th, 2010

About This Release

ICEfaces 2.0.0.RC1 is a Release Candidate build of the next-generation of ICEfaces, designed for JSF 2.0.

This release has been tested on the following:

  • Mojarra JSF 2.0.3-FCS, JSF 2.0.4-b06, and JSF 2.1 SNAPSHOT (Sept. 3rd, 2010)
  • Tomcat 6, 7
  • Glassfish 3
  • JBoss 6

(Note that any JEE6-compliant platform should work)

Notable Changes and Improvements since Beta2

  • Sample Applications
    • All ICEfaces sample applications are now located under the "icefaces/samples" directory.
    • The ant build targets for the sample applications have been simplified and are now consistent for all sample applications. The following main build targets are available:
      • servlet-profile (New Default) - Generates a .war file according to the servlet-profile which includes the JSF and EL libraries (Jetty 7, Tomcat 6 and 7).
      • web-profile - Generate a .war file according to the JEE6 web-profile which excludes the JSF and EL libraries (GlassFish v3, JBoss 6)
    • Note that the pre-built .war files in the binary bundle are now targeted at the "servlet-profile" (Tomcat / Jetty). In previous ICEfaces 2 preview releases the .wars were based on the "web-profile" (Glassfish 3 / JBoss 6). If you wish to deploy the sample applications to a JEE6 container, you will need to build them using the "web-profile" target.
  • ICEfaces Core
    • Single Submit
      • The "singleSubmit" tag now works with both the ICEfaces Components and ICEfaces Advanced Components, in addition to the JSF standard components.
    • deltaSubmit
      • A previous limitation with using Delta Submit with the ICEfaces Components has been removed in this release.
    • New Configurations
      • blockUIOnSubmit - Setting blockUIOnSubmit to true will block the user interface from receiving any subsequent user interactions while a previous submit is in progress.
      • connectionLostRedirectURI - Setting connectionLostRedirectURI to a valid URI results in the client being redirected to the specified page in the event that the Ajax Push connection is lost.
      • sessionExpiredRedirectURI - Setting sessionExpiredRedirectURI to a valid URI results in the client being redirected to the specified page when the user session expires.
      • mandatoryResourceConfiguration - Used to disable or tune preloading of JavaScript for the Advanced Components.
  • ICEfaces Advanced Components
    • FileEntry - now automatically displays upload progress.
    • CheckboxButton - the "labelPosition" attribute has been removed.
    • SliderEntry - the "submitOn" attribute has been removed.
    • Skins - General "Rime" skin improvements
    • Numerous bug fixes
  • Intelligent "h:message(s)" Caching. ICEfaces will now intelligently cache and redisplay validation messages that were generated by components executed in a previous JSF life-cycle when subsequent life-cycles render them, but do not execute them.
    • It's complicated, but basically this feature will ensure that your validation messages remain on the page as long as the component is actually invalid, regardless of what type of AJAX JSF life-cycles occur.
  • Block UI On Submit. An new "BlockUIOnSubmit" feature has been added that will prevent user-interaction with the application while a previous submit is still pending, including visual cues to the user that they should wait before proceeding.
    • See the ICEfaces Configuration documentation for more information.
  • View Scope Annotations. The following new annotations are now supported:
    • @org.icefaces.bean.ViewRetained - When found on a ViewScoped bean, that bean will be propagated across navigations to the same view ID.
    • @WindowDisposed - when found on a ViewScoped bean, that bean will be removed from the map when the browser window associated with that view is closed.
    • See the Annotations page for details.
  • New Core Framework APIs. The following new core framework APIs are now available:
    • Focus Management - Enables server-side application control of the client-side focus.
    • One-Time JavaScript Function Invocation - Enables server-side one-time execution of a client-side JavaScript function.
    • See the ICEfaces Core API JavaDoc for more information.
  • New Auction Example. The ICEfaces 2 'Auction' example application has been completely re-implemented to better illustrate best-practices and the use of ICEfaces 2 core framework features.
  • General Bug Fixes. Hundreds of bugs have been squashed since Beta 1.

For a complete list of all changes in this release, see the related JIRA Change Log.

Known Issues

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


  • JSPs are not supported by ICEfaces 2.0 - use Facelets.
  • It is required to specify "h:head" and "h:body" tags in your ICEfaces application pages.
  • Due to an apparent bug in the Sun Mojarra JSF 2.0.3 runtime library, component binding is not reliable when used within a View scope. The recommended workaround is to use the ICEfaces "Window" or JSF "Session" scopes instead if component-binding is required. Alternatively, applications can be modified to avoid the requirement for using component-binding in View scope by using techniques similar to that used in the Data Paginator demo section of Compatible Component Showcase application. For details, see ICE-5226.
  • There is a regression that prevents path-style servlet mappings for the FacesServlet (e.g. /faces/*) from functioning correctly. For now, extension style mappings (e.g *.jsf) should be used instead. For details, see ICE-5366.

Advanced Components

  • The Advanced Components have had only basic functional testing completed on a variety of browsers, and many are missing key intended functionality in this release.
  • The Advanced Components are not currently compatible with portlet development on Liferay due to a JavaScript namespace collision. This will be addressed in the final release.
  • The Advanced Components may attempt to load certain .js resources directly from This issue will be corrected prior to final release.

1.8.x Compatibility

  • In ICEfaces 2.0, the "Request" scope is the "standard" JSF Request scope, and not the "Extended" Request scope that was the default in ICEfaces 1.x.. This change may result in failures for ICEfaces 1.x applications that relied on the Extended Request Scope behavior that are being moved to ICEfaces 2.0. The workaround for this issue is to adopt one of "View", "Window", or "Session" scopes in JSF/ICEfaces 2.0 instead.
  • The following ICEfaces 1.8.2 Component Suite components are deprecated for ICEfaces 2.0 and are not functional:
    • ice:inputFile (An all-new input file component under development as a replacement to be provided in the next release (Beta2)
    • ice:outputDeclaration (use Facelets standard approach / "<DOCTYPE ...>" instead)
    • ice:outputBody (use h:body instead)
    • ice:outputHead (use h:head instead)
    • ice:outputHtml (use <HTML> tag instead)
  • The "deltaSubmit" configuration mode is not currently supported when using the ICEfaces Compat library (icefaces-compat.jar).

Application Servers

  • Tomcat 6.0
    • In some cases, when running Tomcat on Windows, undeploying an ICEfaces 2 compatible application (i.e. that includes the icefaces-compat.jar) can cause an exception. See ICE-5222 for additional information about this issue. To prevent this, include a context.xml file with your application that includes the following Context attributes to prevent jar and resource locking:
      <Context antiJarLocking="true" antiResourceLocking="true"/>
  • Glassfish 3 / JBoss 6
    • It is necessary to use Mojarra JSF 2.0.3-FCS or greater installed. This may require updating the JSF Mojarra runtime libraries in Glassfish 3 or JBoss 6, depending on which JSF version is currently installed.


Open source community support is available at

All questions, comments, or general discussions specific to ICEfaces 2.0 Beta 2 should be made in the ICEfaces Development Build Feedback forum.

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

© Copyright 2017 ICEsoft Technologies Canada Corp.