this is the wiki home for the icefaces open-source project....

392
Document generated by Confluence on Jan 19, 2012 16:38 Page 1 Space Details Key: ICE Name: ICEfaces Description: This is the Wiki home for the ICEfaces open-source project. See www.icefaces.org for details. Creator (Creation Date): ken.fyten (Dec 15, 2009) Last Modifier (Mod. Date): ken.fyten (Oct 29, 2010) Available Pages ICEfaces 2 Overview ICEfaces 2.x Release Notes ICEfaces 2.0.2 Release Notes ICEfaces 2.0.1 Release Notes ICEfaces 2.0.0 Release Notes ICEfaces 2.0.0 RC2 Release Notes ICEfaces 2.0.0 RC1 Release Notes ICEfaces 2.0.0 Beta 2 Release Notes ICEfaces 2.0.0 Beta 1 Release Notes ICEfaces-2.0.0-Alpha3 Release Notes ICEfaces-2.0.0-Alpha2 Release Notes ICEfaces 2 Documentation ICEfaces 2 Features Getting Started Downloading ICEfaces Supported Platforms Adding ICEfaces to Your Application Building and Running ICEfaces Examples with Maven Building and Running ICEfaces with Ant Key Concepts Automatic Ajax Direct-to-DOM Rendering Single Submit Ajax Push - Overview Core Framework Ajax Push - APIs Core Tags Annotations JavaScript Client API Handling Exceptions Configuration ICEpush Configuration JSF Configuration Components

Upload: lamque

Post on 13-Mar-2018

246 views

Category:

Documents


2 download

TRANSCRIPT

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 1

    Space DetailsKey: ICE

    Name: ICEfaces

    Description: This is the Wiki home for the ICEfaces open-source project. Seewww.icefaces.org for details.

    Creator (Creation Date): ken.fyten (Dec 15, 2009)

    Last Modifier (Mod. Date): ken.fyten (Oct 29, 2010)

    Available Pages ICEfaces 2 Overview

    ICEfaces 2.x Release Notes ICEfaces 2.0.2 Release Notes

    ICEfaces 2.0.1 Release Notes

    ICEfaces 2.0.0 Release Notes

    ICEfaces 2.0.0 RC2 Release Notes

    ICEfaces 2.0.0 RC1 Release Notes

    ICEfaces 2.0.0 Beta 2 Release Notes

    ICEfaces 2.0.0 Beta 1 Release Notes

    ICEfaces-2.0.0-Alpha3 Release Notes

    ICEfaces-2.0.0-Alpha2 Release Notes

    ICEfaces 2 Documentation ICEfaces 2 Features

    Getting Started Downloading ICEfaces

    Supported Platforms

    Adding ICEfaces to Your Application

    Building and Running ICEfaces Examples with Maven

    Building and Running ICEfaces with Ant

    Key Concepts Automatic Ajax

    Direct-to-DOM Rendering

    Single Submit

    Ajax Push - Overview

    Core Framework Ajax Push - APIs

    Core Tags

    Annotations

    JavaScript Client API

    Handling Exceptions

    Configuration

    ICEpush Configuration

    JSF Configuration

    Components

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 2

    ICEfaces Components

    ICEfaces 2.0 Advanced Components Animation 2.0

    CheckboxButton 2.0

    DateTimeEntry 2.0

    FileEntry 2.0

    LinkButton 2.0

    PushButton 2.0

    SliderEntry 2.0

    TabSet 2.0

    ICEfaces Advanced Components Environment ACE ThemeRoller support

    ACE Source Artefacts and Generated Outputs

    ACE Meta Class

    ACE Component and Renderer Classes

    ACE Adding Resources to Meta Class

    ACE Skinning ACE Sprite Image Generation

    ACE CSS URL Mapping

    ACE Disabled Styling Standard

    Portlet Development

    ICEfaces 1.x Compatibility

    API Documentation

    Tutorials Introductory Tutorials

    Creating ICEfaces 2.1 Applications with Eclipse

    Getting Started with ICEfaces 2

    Creating ICEfaces Applications with Eclipse

    Converting ICEfaces 1.8 Applications to ICEfaces 2

    Converting ICEfaces 1.8 Components to ICEfaces 2

    ICEfaces Feature Tutorial Easy Ajax Push

    Using Single Submit

    Using Window Scope

    ICEfaces Component Tutorials Auto-Complete

    Calendar

    Chart

    Columns

    Connection Status

    Data Table

    Drag & Drop

    Effects

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 3

    Menu Bar

    Panel Series

    Popup

    Progress Bar

    Tree

    ICEfaces Advanced Component Tutorials Incremental Upload Processing Using FileEntryCallback

    General Tutorials Creating Your First Hibernate-Enabled Application

    Using ICEfaces with CDI

    Using ICEfaces with Spring Spring Web Flow 2

    Spring Security

    Converters

    Creating a Composite Component

    Internationalization in ICEfaces

    Validators

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 4

    ICEfaces 2 Overview

    This page last changed on Mar 16, 2011 by feras.nasser.

    A New Standard

    ICEfaces 2 is an open-source Rich Internet Application (RIA) development framework based on theJavaServer Faces (JSF) 2 standard. Like its predecessor, ICEfaces 1.8, ICEfaces 2 extends JSF to simplifydevelopment and enhance the standard JSF feature set - simultaneously improving developer efficiencyand expanding the spectrum of RIA capabilities that can be included in any JSF-based web application.

    Adhering closely to the standard JSF 2 extension points allows ICEfaces to work transparently with thestock JSF framework, simplifying integration and fostering 3rd party compatibility with other JSF 2-compliant libraries.

    Revolutionize RIA Development

    Key ICEfaces 2 framework extensions vastly simplify development, and expand the feature set of JSF 2.

    Automatic Ajax drastically simplifies JSF development by eliminating the need for JSF tags. Direct-to-DOM Rendering calculates the precise set of page changes from one request to thenext, and Single Submit automatically submits individual components for processing. ICEfaceshandles all of the Ajax underpinnings, allowing you to focus on application functionality.

    Ajax Push enables real-time, multi-user collaboration in your JSF applications. Any state change inthe application can instantaneously trigger push updates to other users of the application that needto be informed. New Ajax Push APIs make it simpler than ever to add collaborative features to yourapplication.

    A complete list of framework enhancements can be found here.

    Rich Components

    ICEfaces 2 offers a vast array of rich components from with to craft your user interfaces.

    The ICEfaces Components include all components from ICEfaces 1.8 and use a compatibility layerthat enables them to function with JSF 2.0, and ICEfaces 2. These components provide a smoothmigration path from ICEfaces 1.8.

    The ICEfaces Advanced Components leverage all the features of the JSF 2.0 componentarchitecture, and are based on the all-new Advanced Component Environment (ACE). The YUIJavaScript library provides rich, client-side web controls, but packaged as JSF components, so youdon't need to know or use any JavaScript to include them in your application. Important featuresof the Advanced Components include flexible form definition, UI theming/skinning, and W3C ARIAaccessibility.

    The ICEfaces Enterprise Components are derived from the ICEfaces 1.8 Composite Component,but ported to the new JSF 2.0 Facelet architecture. Originally created by the ICEfaces applicationdevelopment team, these components can greatly reduce development time for a host of commonapplication use cases. These components are available only in ICEfaces 2 Enterprise Edition.

    Tools

    ICEfaces 2 can be easily integrated into any Java EE development environment. In particular, IDEintegration bundles are available for the open source IDEs Eclipse, and NetBeans.

    Open Source and Enterprise Grade

    ICEfaces 2 is an open source project licensed under Mozilla Public License, so you can develop anddeploy with it, without any commercial licensing restrictions. You get all the advantages of a vibrant

    http://wiki.icefaces.org//display/ICE/ICEfaces+Advanced+Components

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 5

    open source community, including a well-exercised code base, developer forums, and this wiki loadedwith documentation and tutorials. ICEfaces is also enterprise grade software that is deployed in a widerange of Fortune 500 companies. If you need the assurances of professional support, you will get thatand more from ICEfaces 2 Enterprise Edition (EE). With EE you get additional software, documentation,and deployment technologies like the Enterprise Push Server. You can learn more about the features andbenefits of ICEfaces 2 EE here.

    http://www.icefaces.org/main/ajax-java/icefaces-ee.ifacehttp://www.icefaces.org/main/ajax-java/enterprise-push-server.ifacehttp://www.icefaces.org/main/ajax-java/icefaces-ee.iface

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 6

    ICEfaces 2.x Release Notes

    This page last changed on Dec 22, 2011 by ken.fyten.

    ICEfaces Release Notes

    Latest Release

    Version Date

    ICEfaces 3.0.0 RC2 2011-12-22

    Latest Stable Release

    Version Date

    ICEfaces 2.0.2 2011-05-13

    Older Releases

    Version Date

    ICEfaces 2.1.0 BETA 2 2011-11-04

    ICEfaces 2.1.0 BETA 2011-10-04

    ICEfaces 2.0.1 2011-03-30

    ICEfaces 2.0.0 2010-12-21

    http://wiki.icefaces.org//display/ICE/ICEfaces+3.0.0.RC2+Release+Noteshttp://wiki.icefaces.org//display/ICE/ICEfaces+2.1.0+Beta+2+Release+Noteshttp://wiki.icefaces.org//display/ICE/ICEfaces+2.1.0+Beta+Release+Notes

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 7

    ICEfaces 2.0.2 Release Notes

    This page last changed on May 13, 2011 by ken.fyten.

    ICEfaces 2.0.2 Release Notes

    May 13th, 2011

    Cannot resolve external resource into attachment.

    Contents

    These Release Notes include the following sections:

    About This Release Downloads Notable Changes

    Mojarra JSF 2.1.1-FCS Core Framework Changes Advanced Components Portlets Samples and Tutorials IDE Integrations

    Supported Platforms Known Issues Support

    About This Release

    ICEfaces 2.0.2 is an official maintenance release featuring over 25 fixes and improvements.

    Downloads

    ICEfaces 2.0.2 is available for download in the following formats:

    Binary and source-code bundles IDE Tool integration bundles Maven2 Public Repository (jars only) SVN repository checkout

    Notable Changes in this Release

    Mojarra JSF 2.1.1-FCS

    This release has been tested against Mojarra JSF 2.1.1-FCS, and includes the JSF 2.1.1-FCS librariesin the download bundles.

    Note that JSF 2.1.1-FCS is referred to as 2.1.1_b04 in the public Mojarra Maven repository.

    Core Framework

    Delta-Submit

    http://downloads.icefaces.orghttp://www.icefaces.org/main/downloads/os-downloads.iface?category=Eclipse,NetBeanshttp://anonsvn.icefaces.org/repo/maven2/releases/org/http://anonsvn.icefaces.org/repo/icefaces2/tags/icefaces-2.0.2/

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 8

    Several issues that could cause problems when using Delta-Submit in specific circumstanceshave been resolved.

    ICEfaces Advanced Components

    Support for Portlets The Advanced Components are now supported on Liferay 5.2. There remains a YUI-namespace collision issue that prevents the Advanced Components from

    being deployed to Liferay 6. See the Known Issues section for details. This issue is expected tobe resolved with ICEfaces 2.1.

    Reduced JavaScript and CSS Static Footprint The Advanced Components now leverage compressed and combined JavaScript and CSS files

    which further reduces the number and size of the resource files that must loaded when initiallyvisiting the page. The net result is that pages using the Advanced Components now loaddramatically faster and overall response time when navigating between pages is substantiallyimproved.

    A bug that prevented deploying ICEfaces applications that use ACE components to the ROOT contexthas been resolved.

    The focus indicator on the ace:sliderEntry component has been reduced in size. Previously it couldgrow to the width/height of the container in some browsers.

    PortletFaces Bridge

    The included PortletFaces Bridge library has been updated to the 2.0.0 final release.

    Samples & Tutorials

    Component Showcase Styling bugs in the panelTooltip and panelPositioned demos have been fixed.

    IDE Integrations

    NetBeans 7 This release provides a new IDE integration for NetBeans 7.

    Eclipse 3.6 Eclipse 3.6 is also supported.

    MyEclipse 9.0.1 MyEclipse 9.0.1 will include an ICEfaces 2.0.2 integration (when released by Genuitec).

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

    Supported Platforms

    This release has been tested on the following:

    JSF Runtimes

    Mojarra JSF 2.1.1-FCS / JSF 2.1.1-b04 This version is included in the release bundles

    Browsers

    Google Chrome 10

    http://wiki.icefaces.org//display/ICE/ICEfaces+Advanced+Componentshttp://www.portletfaces.org/projects/portletfaces-bridgehttp://jira.icefaces.org/secure/IssueNavigator.jspa?reset=true&pid=10021&fixfor=10273

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 9

    Mozilla Firefox 3.6, 4.0 Microsoft IE 8, IE 9 Apple Safari 5

    Application Servers

    Tomcat 6, 7 Glassfish 3.1 JBoss 6.0

    Portal Containers

    Liferay Portal 5.2.3, 6.0.6 Using PortletFaces Bridge v2.0.0

    Known Issues

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

    General

    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. The Delta-Submit function does not support cases where an Ajax DOM update in the browser

    dynamically introduces new form elements into the DOM that were not part of the form whenthe page was originally loaded. In order to use Delta-Submit successfully all form elements /components must be present on the page at the time the page is loaded.

    Due to an apparent bug in the Sun Mojarra JSF 2 runtime library, component binding is not reliablewhen used within a View scope.

    The recommended workaround is to use the ICEfaces "Window" or JSF "Session" scopesinstead if component-binding is required. Alternatively, applications can be modified to avoidthe requirement for using component-binding in View scope by using techniques similar to thatused in the Data Paginator demo section of Compatible Component Showcase application. Fordetails, see ICE-5226.

    ICEfaces Components

    ice:inputRichText The inputRichText component is not currently supported on IE9. This issue will be resolved in a

    future release.

    Advanced Components

    ace:fileEntry - occasionally the JavaScript error "Failed to load resource: javax.faces.resource/listen.icepush.jsf" will appear in the JavaScript console after a successful file upload. This error canbe ignored as it has no functional impact.

    Liferay Portal 6

    The Advanced Components are not currently supported on Liferay Portal 6, with the exception of thefileEntry component (Liferay 5.2 is supported).

    Using the fileEntry component on Liferay 6 requires that the mandatoryResourceConfigurationconfiguration parameter be set in the web.xml as follows:

    org.icefaces.mandatoryResourceConfiguration

    http://www.portletfaces.org/projects/portletfaces-bridgehttps://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492http://jira.icefaces.org/browse/ICE-5226?focusedCommentId=29297&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_29297

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 10

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 11

    The ICEfaces community forums are available for questions, comments, or general discussions regardingICEfaces 2.

    http://www.icefaces.org/JForum/forums/list.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 12

    ICEfaces 2.0.1 Release Notes

    This page last changed on Mar 30, 2011 by ken.fyten.

    ICEfaces 2.0.1 Release Notes

    March 30th, 2011

    Cannot resolve external resource into attachment.

    Contents

    These Release Notes include the following sections:

    About This Release Downloads Notable Changes

    New Supported Platforms Core Framework Changes ICEfaces Components Advanced Components Samples and Tutorials

    Supported Platforms Known Issues Support

    About This Release

    ICEfaces 2.0.1 is an official maintenance release featuring over 110 improvements and fixes.

    Although this release has been certified on Mojarra JSF 2.1.0-FCS, there are significantknown issues with this JSF release that impact users working on non-Glassfish applicationservers, or who wish to use IE 9. As a result, the ICEfaces release bundles provide theMojarra JSF 2.1.1-b03 preview release to be used as an alternative. See the Known Issuessection for details.

    Downloads

    ICEfaces 2.0.1 is available for download in the following formats:

    Binary and source-code bundles IDE Tool integration bundles Maven2 Public Repository (jars only) SVN repository checkout

    Notable Changes in this Release

    New Supported Platforms

    Support for the following additional platforms is added in this release: Google Chrome 10 Mozilla Firefox 4.0

    http://downloads.icefaces.orghttp://www.icefaces.org/main/downloads/os-downloads.iface?category=Eclipse,NetBeanshttp://anonsvn.icefaces.org/repo/maven2/releases/org/http://anonsvn.icefaces.org/repo/icefaces2/tags/icefaces-2.0.1/

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 13

    Microsoft Internet Explorer 9 (IE 9) Oracle Glassfish 3.1 (final) JBoss 6.0 (final) Liferay Portal 5.2.3

    Core Framework

    Lazy Window Scope Initialization Management of Window Scope requires HTTP messages to be sent to the server whenever

    browser navigation or window closing events occur. To avoid unnecessary network traffic,Window Scope initialization has been optimized to only perform Window Scope related HTTPtransactions when Window Scope is being used by the application.

    Single-Submit Several improvements have been made to SingleSubmit to resolve issues with unnecessary

    double-submits occurring in specific circumstances.

    JavaScript Bridge Due to a bug in Mojarra, JSF full-page DOM updates performed via Ajax do not properly

    execute JavaScript included in the region of the page on some browsers (IEs,Firefox), resulting is unpredictable and hard-to-trace failures. A work-around for this issue hasbeen included in this release.

    HTTP errors are now handled and reported by the ICEfaces bridge. There is an associated newice.onNetworkError(callback) JavaScript Client API in support of this.

    It is now possible to disable the default ICEfaces error popup panels. By default, ICEfaceswill report various connection or application errors in the form of popup dialog panels in thebrowser window. Using one of the techniques below, it is now possible to disable the defaulterror dialogs, which is useful if you are implementing your own error reporting strategy, etc.

    - A new ice.disableDefaultErrorPopups JavaScript Client API is available for dynamicallydisabling the error popups on the client using JavaScript.

    - The new configuration parameter "org.icefaces.disableDefaultErrorPopups" can bespecified in the web.xml file to disable the default error popups. See the Configurationtopic for details.

    Several omissions and errors have been corrected in the JavaScript Client API topic in theICEfaces 2 Documentation Wiki.

    ICEfaces Components

    The JavaScript files used by the ICEfaces Components have been optimized to reduce their sizes,resulting in a 50% size savings vs. 2.0.0 (approx. 250KB).

    ice:dataPaginator A layout bug related to using "vertical" alignment has been fixed.

    ice:inputRichText Now supports the "partialSubmit" attribute.

    ice:outputResource Now supports the "disabled" attribute.

    ice:panelPopup Several issues with modal ice:panelPopups in various browsers and use-cases have been

    resolved. ice:selectOneMenu

    This component can now accept an array of Objects as input to create the list.

    ICEfaces Advanced Components

    Reduced Static JavaScript Footprint The Advanced Components now leverage the YUI bootstrap loader which greatly reduces the

    number and size of the JavaScript files that must loaded when initially visiting the page. Thenet result is that pages using the Advanced Components now load dramatically faster andoverall response time when navigating between pages is substantially improved.

    ace:fileEntry New support for stream-based processing of uploaded files, roughly analogous to the old

    ice:inputFile's outputStream property. Using this mode of operation, when files are uploaded

    http://wiki.icefaces.org//display/ICE/ICEfaces+Advanced+Components

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 14

    they are not automatically written to the server file-system, but will instead be processed bythe new FileEntryCallback interface, allowing for in-memory processing of the file. Typical use-cases for this functionality are when the file may be stored in a database, needs to be virusscanned before being saved on the server, etc.

    The previously selected file/path information is now automatically cleared upon the successfulcompletion of an upload.

    ace:slider Now supports displaying range labels on slider for min, median, and max values via the new

    "showLabels" attribute. All ACE input components now support the "disabled" attribute and associated skin style-classes and

    predefined skin styles.

    Samples & Tutorials

    Support for building the portlet versions of various sample applications with Maven has been addedin this release.

    Component Showcase A new demo has been added to demonstrate the use of the ice:menuItems sub-component,

    called "Dynamic Menu". A bug in the Output Resource demo has been fixed that caused the demo to attempt to

    download zero-length files. The following new tutorials are available:

    Using ICEfaces with CDI Using ICEfaces with Spring Security 3 Using ICEfaces with Spring WebFlow 2

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

    Supported Platforms

    This release has been tested on the following:

    JSF Runtimes

    Mojarra JSF 2.1.0-FCS Mojarra JSF 2.1.1-b03

    JSF 2.1.1-b03 is an unofficial preview release from 3/22/2011, see Known Issues for details. This version is included in the release bundle.

    Browsers

    Google Chrome 10 Mozilla Firefox 3.6, 4.0 Microsoft IE 8, IE 9 Apple Safari 5

    Application Servers

    Tomcat 6, 7 Glassfish 3.1 JBoss 6.0

    Portal Containers

    Liferay Portal 5.2.3, 6.0.6 Both using PortletFacesBridge v2.0-RC1

    http://wiki.icefaces.org/display/ICE/Spring+Securityhttp://wiki.icefaces.org/display/ICE/Spring+Web+Flow+2http://jira.icefaces.org/browse/ICE/fixforversion/10255

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 15

    Known Issues

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

    General

    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 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 avoidthe requirement for using component-binding in View scope by using techniques similar to thatused in the Data Paginator demo section of Compatible Component Showcase application. Fordetails, see ICE-5226.

    ICEfaces Components

    ice:inputRichText The inputRichText component is not currently supported on IE9. This issue will be resolved in

    the next release.

    Advanced Components

    ace:fileEntry - occasionally the JavaScript error "Failed to load resource: javax.faces.resource/listen.icepush.jsf" will appear in the JavaScript console after a successful file upload. This error canbe ignored as it has no functional impact.

    Portlets

    The Advanced Components are not currently supported for portlet development, with theexception of the fileEntry component. Using the fileEntry component on Liferay requires that themandatoryResourceConfiguration configuration parameter be set in the web.xml as follows:

    org.icefaces.mandatoryResourceConfiguration

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 16

    Browsers

    WebKit (Safari and Chrome) The WebKit-based browsers (Google Chrome and Apple Safari) request content-type

    "application/xhtml+xml" by default, which is different from virtually all other browsers. Incases where the application page doesn't set the contentType explicitly this can result in thesebrowsers defaulting to a strict XHTML rendering mode, which can cause some unexpectedstyling and layout issues. In order to have WebKit-based browsers render markup consistentlywith other browsers, you must specify the content-type in the view tag on each page:

    See http://jira.icefaces.org/browse/ICE-6138 for more information.

    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 http://jira.icefaces.org/browse/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 toprevent jar and resource locking:

    Glassfish 3 / JBoss 6 (JEE 6 Platforms) It is necessary to have Mojarra JSF 2.1.0-FCS or greater installed. This may require updating

    the JSF Mojarra runtime libraries in Glassfish 3 or JBoss 6, depending on which JSF version iscurrently installed.

    Support

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

    The ICEfaces community forums are available for questions, comments, or general discussions regardingICEfaces 2.

    http://jira.icefaces.org/browse/ICE-6138http://jira.icefaces.org/browse/ICE-5222?focusedCommentId=27631&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_27631http://jira.icefaces.org/browse/ICE-5222?focusedCommentId=27631&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_27631http://www.icefaces.orghttp://www.icefaces.org/JForum/forums/list.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 17

    ICEfaces 2.0.0 Release Notes

    This page last changed on Mar 14, 2011 by ken.fyten.

    ICEfaces 2.0.0 Release Notes

    December 21st, 2010

    Cannot resolve external resource into attachment.

    About This Release

    ICEfaces 2.0.0 is the official release of the next-generation of ICEfaces, designed for JSF 2.0.

    Contents

    These Release Notes include the following sections:

    About This Release Downloads New Features

    Framework Enhancements Rich Components

    Supported Platforms Known Issues Support

    Downloads

    ICEfaces 2.0 is available for download in the following formats:

    Binary and source-code bundles Maven2 Public Repository (jars only) SVN repository checkout

    New Features

    ICEfaces 2 provides some key feature enhancements over JSF 2, while inheriting all the new featuresavailable in JSF 2.

    Framework Enhancements

    The following framework enhancements extend the capabilities of standard JSF 2:

    Automatic Ajax

    ICEfaces 2 includes several innovative features that cumulatively result in Automatic Ajax, completelyeliminating the need for developers to wire page updates together using standard JSF tags.

    Direct-to-DOM Rendering (D2D) renders component markup to a server-side DOM that reflectsthe current client view. Each time the JSF lifecycle runs, a DOM comparison is done, and if thereare any changes, a concise set of page updates are sent back to the client to be applied to thepage. Simply adding the ICEfaces 2 library to an existing JSF 2 application will provide dynamic

    http://downloads.icefaces.orghttp://www.icefaces.org/JForum/posts/list/14793.pagehttp://anonsvn.icefaces.org/repo/icefaces2/tags/icefaces-2.0.0-final/

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 18

    partial-page-updates for all compliant components, without the need to specify the JSF component in your pages.

    Single Submit enables all components to automatically submit themselves base on userinteraction. The JSF lifecycle executes on just that single component, and then the entire renderphase is executed. From there the D2D mechanism determines the exact set of incremental pagechanges required in response to the Single Submit.

    Ajax Push

    Ajax Push enables real-time, multi-user collaboration in your JSF application. Any state change in theapplication can instantaneously push updates to other users of the application that need to be informed.New Ajax Push APIs make it simpler than ever to add collaborative features to your application.

    Window Scope

    The custom Window scope is designed to fill a gap in the existing scopes available for JSF 2.0, as it existsfor the life of a browser window or tab, including surviving reloads and refreshes.

    Bean Management

    Annotations are provided that adjust the behavior of View-scoped beans. While View scope is a welcomeaddition for managing the lifecycle of beans, the behavior of View scope may not be intuitive in certainscenarios. Specifically, the annotations allow you to control the behavior of view-scoped beans acrossrepeated navigation to the same view, and during view disposal.

    Scoped Resource Registry

    The ResourceRegistry allows an application to register javax.faces.application.Resource instances at runtime. Each Resource is registered in a specified scope (Application, Session, View, Flash, or Window) sothat the resource can be garbage collected when the scope expires.

    Portlet Development

    Portlet support in ICEfaces 2 is provided by the PortletFaces Bridge, an implementation of the JSR 329:Portlet 2.0 Bridge for JSF. The portlet bridge spec technically applies to JSF 1.2, but the PortletFacesversion has been adapted to support JSF 2. The PortletFaces Bridge is tested and shipped with theICEfaces 2 distribution and can be used to develop portlet applications with ICEfaces.

    JavaScript Client API

    In addition to enhancing the basic Ajax features provided by JSF 2, ICEfaces extends a client-side API formonitoring interesting events that occur on the client, such as form submission, event callbacks, and AjaxPush connection monitoring.

    Streamlined Configuration

    While JSF 2 simplifies configuration by leveraging annotations, ICEfaces also streamlines configuration inseveral areas. The ICEfaces-specific servlets and many of the configuration parameters in ICEfaces 1.xare no longer necessary with ICEfaces 2. This makes it even quicker and easier to add ICEfaces to yourJSF application, and greatly reduces the possibility of lost productivity due to minor configuration errors.

    Minimized Dependencies

    ICEfaces 2 core has no 3rd-party library dependencies outside of those libraries specified in the JEE 6"Web Profile". This further streamlines integration and software change management. Note that theICEfaces 2 Compatibility Libraries do require additional 3rd-party libraries when used (same as thoserequired by ICEfaces 1.8).

    http://www.portletfaces.org/projects/portletfaces-bridgehttp://www.jcp.org/en/jsr/detail?id=329http://www.jcp.org/en/jsr/detail?id=329

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 19

    Rich Components

    All components used under ICEfaces 2 inherit the benefits of Automatic Ajax, including the standard JSFcomponents. ICEfaces 2 offers a vast array of rich components beyond the standard ones available in JSF2.

    The ICEfaces Components include the components from ICEfaces 1.8 and use a compatibilitylayer that enables them to function with JSF 2.0, and ICEfaces 2. These components provide asmooth migration path from ICEfaces 1.8.

    The ICEfaces Advanced Components leverage all the features of the JSF 2.0 componentarchitecture, and are based on the all-new Advanced Component Environment (ACE). The YUIJavaScript library provides rich, client-side web controls, but packaged as JSF components, so youdon't need to know or use any JavaScript to include them in your application. Important featuresof the Advanced Components include flexible form definition, UI theming/skinning, and W3C ARIAaccessibility.

    Supported Platforms

    This release has been tested on the following:

    Mojarra JSF 2.0.3-FCS, JSF 2.0.4-b06, and JSF 2.1-b09 (Dec. 10th, 2010) Tomcat 6, 7 Glassfish 3.0, 3.1-M7 JBoss 6.0.0.CR1 Liferay Portal 6.0

    (Note that any JEE6-compliant platform should work)

    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:

    General

    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 byusing techniques similar to that used in the Data Paginator demo section of Compatible ComponentShowcase application. For details, see ICE-5226.

    An apparent bug in Mojarra JSF 2.0.3 (root cause not determined) causes ajax postbacks to ignorenavigation. Upgrade to JSF 2.1 is required.

    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 ICEfaces1.x applications that relied on the Extended Request Scope behavior that are being moved toICEfaces 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 arenot present in ICEfaces 2:

    ice:inputFile (use ace:fileEntry instead)

    http://wiki.icefaces.org//display/ICE/ICEfaces+Advanced+Componentshttp://jira.icefaces.org/secure/IssueNavigator.jspa?mode=hide&requestId=10349https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492http://jira.icefaces.org/browse/ICE-5226?focusedCommentId=29297&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_29297

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 20

    ice:outputDeclaration (use Facelets standard approach / "" instead) ice:outputBody (use h:body instead) ice:outputHead (use h:head instead) ice:outputHtml (use tag instead)

    Advanced Components

    Due to a bug in Mojarra JSF 2.0.x, it is not possible to use the Advanced Components in a dynamicpage, such as having components be included via Facelets ui:include, with the JSF-default PartialState Saving enabled. It is required to disable Partial-State-Saving via the following contextparameter in the web.xml file:

    javax.faces.PARTIAL_STATE_SAVING false

    This bug is fixed in Mojarra JSF 2.1 preview releases.

    ace:fileEntry - occasionally the JavaScript error "Failed to load resource: javax.faces.resource/listen.icepush.jsf" will appear in the JavaScript console after a successful file upload. This error canbe ignored as it has no functional impact.

    Portlets

    Using ICEfaces 2.0.0 for portlet development requires the use of the included icefaces/libs/portlets/jsf-api-2.0.4-b06a.jar, and jsf-impl-2.0.4-b06a.jar, which contain JSF fixes necessary for portletdevelopment.

    The Advanced Components are not currently supported for portlet development on Liferay 6, withthe exception of the fileEntry component. Using the fileEntry component on Liferay 6 requires thatthe mandatoryResourceConfiguration configuration parameter be set in the web.xml as follows:

    org.icefaces.mandatoryResourceConfiguration

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 21

    Support

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

    The ICEfaces community forums are available for questions, comments, or general discussions regardingICEfaces 2.0.

    http://www.icefaces.orghttp://www.icefaces.org/JForum/forums/list.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 22

    ICEfaces 2.0.0 RC2 Release Notes

    This page last changed on Dec 17, 2010 by ken.fyten.

    ICEfaces 2.0.0 RC2 Release Notes

    December 17th, 2010

    Cannot resolve external resource into attachment.

    About This Release

    ICEfaces 2.0.0.RC2 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-b09 (Dec. 10th, 2010) Tomcat 6, 7 Glassfish 3.0, 3.1-M7 JBoss 6.0.0.CR1

    (Note that any JEE6-compliant platform should work)

    Notable Changes and Improvements since RC1

    ICEfaces Advanced Components fileEntry - now supports custom validations of uploaded files. General "Rime" skin improvements

    Sample Applications The Advanced Components Showcase Portlet sample now supports using the fileEntry sample

    as a portlet.

    General Bug Fixes. Numerous bug fixes

    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:

    General

    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 byusing techniques similar to that used in the Data Paginator demo section of Compatible ComponentShowcase application. For details, see ICE-5226.

    Advanced Components

    The Advanced Components are not currently supported for portlet development on Liferay 6, withthe exception of the fileEntry component. Using the fileEntry component on Liferay 6 requires thatthe mandatoryResourceConfiguration configuration parameter be set in the web.xml as follows:

    http://wiki.icefaces.org/display/ICE/ICEfaces+Advanced+Componentshttp://jira.icefaces.org/secure/IssueNavigator.jspa?mode=hide&requestId=10349https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492http://jira.icefaces.org/browse/ICE-5226?focusedCommentId=29297&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_29297

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 23

    org.icefaces.mandatoryResourceConfiguration

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 24

    ICEfaces 2.0.0 RC1 Release Notes

    This page last changed on Dec 11, 2010 by ken.fyten.

    ICEfaces 2.0.0 RC1 Release Notes

    December 10th, 2010

    Cannot resolve external resource into attachment.

    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 JEE6container, 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 ICEfacesAdvanced 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

    - connectionLostRedirectURI - Setting connectionLostRedirectURI to a valid URI resultsin the client being redirected to the specified page in the event that the Ajax Pushconnection is lost.

    - sessionExpiredRedirectURI - Setting sessionExpiredRedirectURI to a valid URI resultsin the client being redirected to the specified page when the user session expires.

    - mandatoryResourceConfiguration - Used to disable or tune preloading of JavaScriptfor the Advanced Components.

    ICEfaces Advanced Components fileEntry - now automatically displays upload progress. dateTimeEntry - now supports localization of the calendar labels. checkboxButton - the "labelPosition" attribute has been removed. sliderEntry - the "thumbURL" and "submitOn" attributes have been removed. The slider

    thumb images are now specified by the Skin CSS. linkButton - now supports the "target" attribute. The Advanced Components now support "f:params" tags as children.

    http://wiki.icefaces.org/display/ICE/Single+Submithttp://wiki.icefaces.org/display/ICE/Configurationhttp://wiki.icefaces.org/display/ICE/ICEfaces+Advanced+Components

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 25

    General "Rime" skin improvements Numerous bug fixes

    ICEfaces Components selectInputDate calendar can now show week of year. selectInputDate can now have seconds drop down item in the date time picker. dataExporter component now works with ice:dataTables that use ice:columns for dynamic

    column definition. dataExporter now exports information defined in the footer of a dataTable Javascript tree update optimisations When using shortcut keys the hovered row should remain selected on newly rendered page

    when changed by the paginator Add title and alt attributes to dataExporter Add a tabindex attribute to the panelTabSet Update FCKEditor JS library used by ice:inputRichText to latest version Improved support for selectInputText, Drag & Drop, panelPositioned, inputRichText

    components when used in Portlets.

    General Bug Fixes. A bunch of bugs have been squashed since Beta 2.

    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:

    General

    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 byusing techniques similar to that used in the Data Paginator demo section of Compatible ComponentShowcase 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. Fordetails, see ICE-5366.

    Advanced Components

    The fileEntry component may log a Serialization exception to the console log in certain situations.This issue will be addressed prior to final release.

    The Advanced Components are not currently supported for portlet development on Liferay.

    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 ICEfaces1.x applications that relied on the Extended Request Scope behavior that are being moved toICEfaces 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 arenot present in ICEfaces 2:

    ice:inputFile (use ace:fileEntry instead) ice:outputDeclaration (use Facelets standard approach / "" instead) ice:outputBody (use h:body instead) ice:outputHead (use h:head instead) ice:outputHtml (use tag instead)

    http://wiki.icefaces.org/display/ICE/ICEfaces+Componentshttp://jira.icefaces.org/secure/IssueNavigator.jspa?mode=hide&requestId=10348https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492http://jira.icefaces.org/browse/ICE-5226?focusedCommentId=29297&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_29297http://jira.icefaces.org/browse/ICE-5366

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 26

    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-5222for additional information about this issue. To prevent this, include a context.xml file with yourapplication that includes the following Context attributes to prevent jar and resource locking:

    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 iscurrently installed.

    Support

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

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

    http://jira.icefaces.org/browse/ICE-5222?focusedCommentId=27631&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_27631http://www.icefaces.orghttp://www.icefaces.org/JForum/forums/show/25.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 27

    ICEfaces 2.0.0 Beta 2 Release Notes

    This page last changed on Oct 29, 2010 by ken.fyten.

    ICEfaces 2.0.0 Beta 2 Release Notes

    October 28th, 2010

    Cannot resolve external resource into attachment.

    About This Release

    ICEfaces 2.0 Beta 2 is the second and final Beta release of the next-generation of ICEfaces, designed forJSF 2.0.

    This release has been tested on the following:

    Mojarra JSF 2.0.3-FCS, JSF 2.0.4-b05, 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

    ICEfaces Advanced Components. The all-new ICEfaces Advanced Components are introducedin this release. These components represent the future of ICEfaces component development, andpromise to provide a new level of richness, responsiveness, and accessibility support to ICEfaces.

    The following components are included in this release:- Animation- CheckboxButton- DateTimeEntry- FileEntry- LinkButton- PushButton- SliderEntry- TabSet

    A new "Advanced Components Showcase" example application is included in this release thatprovides a high-level demonstration of the new components.

    See the ICEfaces Advanced Components documentation for more information. Portlet Development. It is now possible to develop JSR-286 and JSR-329 compatible portlets with

    ICEfaces 2. Portlet support for ICEfaces 2 leverages the PortletFacesBridge library. See the ICEfaces 2 Portlets documentation for details.

    SingleSubmit. The new "singleSubmit" feature provides a very convenient way to configure JSFcomponents to automatically trigger an AJAX submit when they are updated, without the use of tags. "SingleSubmit" is the new "PartialSubmit" (for JSF 2)!

    See the Single Submit page for more information. 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 whensubsequent life-cycles render them, but do not execute them.

    It's complicated, but basically this feature will ensure that your validation messages remain onthe 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 theuser 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 bepropagated across navigations to the same view ID.

    http://wiki.icefaces.org/display/ICE/ICEfaces+Advanced+Componentshttp://www.portletfaces.org/projects/portletfaces-bridgehttp://wiki.icefaces.org/display/ICE/Portlet+Developmenthttp://wiki.icefaces.org/display/ICE/Single+Submithttp://wiki.icefaces.org/display/ICE/Configuration

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 28

    @WindowDisposed - when found on a ViewScoped bean, that bean will be removed from themap 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:

    General

    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 byusing techniques similar to that used in the Data Paginator demo section of Compatible ComponentShowcase 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. Fordetails, see ICE-5366.

    Advanced Components

    The Advanced Components have had only basic functional testing completed on a variety ofbrowsers, and many are missing key intended functionality in this release.

    The Advanced Components are not currently compatible with portlet development on Liferay due toa JavaScript namespace collision. This will be addressed in the final release.

    The Advanced Components may attempt to load certain .js resources directly from yahooapis.com.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 ICEfaces1.x applications that relied on the Extended Request Scope behavior that are being moved toICEfaces 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 arenot functional:

    ice:inputFile (An all-new input file component under development as a replacement to beprovided in the next release (Beta2)

    ice:outputDeclaration (use Facelets standard approach / "" instead) ice:outputBody (use h:body instead) ice:outputHead (use h:head instead) ice:outputHtml (use tag instead)

    The "deltaSubmit" configuration mode is not currently supported when using the ICEfaces Compatlibrary (icefaces-compat.jar).

    Application Servers

    Tomcat 6.0

    http://wiki.icefaces.org/display/ICE/Annotationshttp://wiki.icefaces.org/display/ICE/ICEfaces+2.0+Documentationhttp://jira.icefaces.org/secure/IssueNavigator.jspa?reset=true&pid=10021&fixfor=10242https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492http://jira.icefaces.org/browse/ICE-5226?focusedCommentId=29297&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_29297http://jira.icefaces.org/browse/ICE-5366

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 29

    In some cases, when running Tomcat on Windows, undeploying an ICEfaces 2 compatibleapplication (i.e. that includes the icefaces-compat.jar) can cause an exception. See ICE-5222for additional information about this issue. To prevent this, include a context.xml file with yourapplication that includes the following Context attributes to prevent jar and resource locking:

    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 iscurrently installed.

    Support

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

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

    http://jira.icefaces.org/browse/ICE-5222?focusedCommentId=27631&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_27631http://www.icefaces.orghttp://www.icefaces.org/JForum/forums/show/25.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 30

    ICEfaces 2.0.0 Beta 1 Release Notes

    This page last changed on Aug 13, 2010 by ken.fyten.

    ICEfaces 2.0.0 Beta 1 Release Notes

    July 20th, 2010

    Cannot resolve external resource into attachment.

    About This Release

    ICEfaces v2.0 Beta 1 is the first Beta release for the next-generation of ICEfaces, designed for JSF 2.0.

    In this Beta release, the following aspects of ICEfaces 2.0.0 are considered feature-complete:

    ICEfaces 2.0 Core (icefaces.jar) ICEfaces 2.0 Compatibility Libraries (icefaces-compat.jar)

    Note that a second Beta release (Beta2) is planned that will add support for:

    Portlets All-new ICEfaces 2.0 Component Development Platform and initial set of new components.

    This release has been tested on the following:

    Mojarra JSF 2.0.2-FCS and 2.0.3-FCS on... Tomcat 6, 7 Glassfish 3 JBoss 6 M3

    (Note that any JEE6-compliant platforms should also work)

    Maven2 Archetype

    There is a new Maven2 archetype available for easily creating Maven projects usingICEfaces2 .0 - Beta 1. The archetype is available here: http://anonsvn.icefaces.org/repo/maven2/snapshots/org/icefaces/icefaces-compat-webapp-archetype/For more information, usage instructions, etc. see ICE-5324.

    Notable Changes and Improvements

    Consolidated Compatibility Libraries. The ICEfaces Compatibility Libraries (compat) have beenconsolidated into a single jar archive in this release. The previous icefaces-compat.jar and icefaces-compat-comps.jar have been merged into a single icefaces-compat.jar.

    Renamed ResourceServlet. The com.icesoft.faces.webapp.ResourceServlet has been renamedto com.icesoft.faces.webapp.CompatResourceServlet to indicate that it's exclusively required forcertain compat components, not ICEfaces 2.0 in general. Existing ICEfaces 2.0 applications thatused the previous com.icesoft.faces.webapp.ResourceServlet entry in their web.xml files will need tobe updated to reflect the new CompatResourceServlet name.

    Finalized Public APIs. The packaging of public APIs for the ICEfaces 2.0 core and compat librariesshould be considered final in this release. The classes intended to be used by application developersare documented in the core and compat JavaDocs.

    New Support for DOM Compression. Support has been added in this release to configureICEfaces to compress the server-side DOM it retains between JSF lifecycles, resulting in significantlyreduced server memory consumption at the cost of slightly higher CPU utilization. See the ICEfaces2.0 Configuration reference page for details.

    New Delta-Submit Feature. A new Delta-Submit feature is introduced in this release that providesa significant bandwidth-use reduction for form submits. When deltaSubmit mode is active, theparameters of a form post are compared to the previous submission on the client and only thosethat have changed are sent to the server. The complete form submission is then reconstructed onthe server using the ICEfaces cached-DOM values, and then processed normally. This provides a

    http://anonsvn.icefaces.org/repo/maven2/snapshots/org/icefaces/icefaces-compat-webapp-archetype/http://anonsvn.icefaces.org/repo/maven2/snapshots/org/icefaces/icefaces-compat-webapp-archetype/http://jira.icefaces.org/browse/ICE-5324?focusedCommentId=30137&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_30137http://www.icefaces.org/docs/v2_0_0b1/core/javadocs/index.htmlhttp://www.icefaces.org/docs/v2_0_0b1/compat/javadocs/index.html

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 31

    significant bandwidth reduction while remaining completely transparent to the JSF lifecycle andapplication. The deltaSubmit mode is particularly useful when dealing with large forms that may besubmitted for many small, incremental changes, and also when limited bandwidth is available, suchas when connecting via a dial-up connection or ship-to-shore uplink, etc. See the Configuration pagefor details.

    Expanded Encoding Support. ICEfaces now supports all character encodings generally supportedby the Java platform. Previously, it was a requirement for ICEfaces pages to use the UTF-8encoding.

    Mojarra JSF v2.0.3 Support. This release includes the Mojarra JSF 2.0.3 JSF runtime libraries, andhas been tested on both JSF 2.0.2 and JSF 2.0.3.

    General Bug Fixes. Lots of bugs squashed since Alpha 3.

    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:

    General

    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.2 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 byusing techniques similar to that used in the Data Paginator demo section of Compatible ComponentShowcase application. For details, see ICE-5226.

    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 ICEfaces1.x applications that relied on the Extended Request Scope behavior that are being moved toICEfaces 2.0. The workaround for this issue is to adopt one of "View", "Window", or "Session"scopes in JSF/ICEfaces 2.0 instead.

    The "ice:form" component must be used (in place of "h:form") when using the ICEfaces 1.8Compatibility components.

    The following ICEfaces 1.8.2 Component Suite components are deprecated for ICEfaces 2.0 and arenot functional:

    ice:inputFile (An all-new input file component under development as a replacement to beprovided in the next release (Beta2)

    ice:outputDeclaration (use Facelets standard approach / "" instead) ice:outputBody (use h:body instead) ice:outputHead (use h:head instead) ice:outputHtml (use tag instead)

    The "deltaSubmit" configuration mode is not currently supported when using the ICEfaces Compatlibrary (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-5222for additional information about this issue. To prevent this, include a context.xml file with yourapplication that includes the following Context attributes to prevent jar and resource locking:

    http://jira.icefaces.org/secure/IssueNavigator.jspa?reset=true&pid=10021&fixfor=10231https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492http://jira.icefaces.org/browse/ICE-5226?focusedCommentId=29297&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_29297http://jira.icefaces.org/browse/ICE-5222?focusedCommentId=27631&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_27631

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 32

    Glassfish 3 / JBoss 6 It is necessary to use Mojarra JSF 2.0.2-FCS, or 2.0.3-FCS specifically with this release. This

    may require updating the JSF Mojarra runtime libraries in Glassfish 3 or JBoss 6, depending onwhich JSF version is currently installed.

    Support

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

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

    http://www.icefaces.orghttp://www.icefaces.org/JForum/forums/show/25.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 33

    ICEfaces-2.0.0-Alpha3 Release Notes

    This page last changed on May 31, 2010 by ken.fyten.

    ICEfaces 2.0.0 Alpha 3 Release Notes

    May 31st, 2010

    Cannot resolve external resource into attachment.

    About This Release

    ICEfaces v2.0 Alpha 3 is an early developer milestone for the next-generation of ICEfaces, designed forJSF 2.0.

    Notable Changes and Improvements

    New Automatic Per-View Ajax Push Configuration and Cleanup. ICEfaces will now setupand teardown the asynchronous communication channel (asynchronous update mode, or "AjaxPush") dynamically on a per-view basis. This is useful for applications that only require Ajax Push onspecific pages, such that the browser client will only maintain an open asynchronous connection ifthe user is actively viewing a page that requires it, resulting in reduced fixed overhead for utilizingAjax Push and improved overall scalability for Ajax Push enabled applications.

    New Auto-ID Generation. ICEfaces will now automatically insert ID attributes on componentsthat have not had IDs specified. This enables ICEfaces to provide a high degree of granularity forDOM updates, resulting in smaller regions of the page being updated in the browser for an improveduser experience. For more information see the "AutoID" section under Advanced Configuration in theICEfaces 2.0 Getting Started topic.

    Support for Subtree Rendering. The ICEfaces server-side DOM-diff renderer now supports truesubtree rendering to fully support the JSF 2.0 "f:ajax" tag.

    Consistent Cross-Browser Support for "Submit On Enter". A user pressing the "Enter" keywhile focussed on an input component ("h:", "ice:", or other) will result in the form that contains thecomponent being submitted, regardless of the browser being used (assuming the component itselfdoesn't

    Revised Single-Submit Client APIs. The ICEfaces JavaScript APIs for Single-Submit (primarilyused by components) have been revised. The "ice.singleSubmit()" / "ice.ss()" functions havebeen replaced with two new functions, "ice.se()" and "ice.ser()". See the JavaScript Client APIdocumentation for details.

    Improved Mojarra JSF v2.0.2 Support. This release includes improved JSF 2.0.2 compatibility,including special workarounds for several bugs in Mojarra JSF 2.0.2, including an issue thatprevented reliable navigation between ICEfaces and non-ICEfaces pages, and improper rendering ofice:debug and ice:message(s) components when used with ICEfaces. In addition, the Mojarra 2.0.2JSF unit-tests now pass with ICEfaces configured, ensuring that ICEfaces does not alter the standardJSF behavior in a negative manner.

    General Bug Fixes. Lots of bugs squashed since Alpha 2.

    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:

    General

    JSPs are not supported by ICEfaces 2.0, use Facelets instead. 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.2 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

    http://jira.icefaces.org/secure/IssueNavigator.jspa?mode=hide&requestId=10324https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 34

    using techniques similar to that used in the Data Paginator demo section of Compatible ComponentShowcase application. For details, see ICE-5226.

    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 ICEfaces1.x applications that relied on the Extended Request Scope behavior that are being moved toICEfaces 2.0. The workaround for this issue is to adopt one of "View", "Window", or "Session"scopes in JSF/ICEfaces 2.0 instead.

    The "ice:form" component must be used (in place of "h:form") when using the ICEfaces 1.8Compatibility components. See ICE-5090 for details.

    The following ICEfaces 1.8.2 Component Suite components are deprecated for ICEfaces 2.0 and arenot functional.

    ice:inputFile (An all-new input file component is planned as a replacement to be provided inthe next release)

    ice:outputDeclaration (use Facelets standard approach / "" instead) ice:outputBody (use h:body instead) ice:outputHead (use h:head instead) ice:outputHtml (use tag instead)

    ICEpush

    ICEpush is limited to a single push application per server. Viewing multiple ICEfaces pushapplications in the same browser from the same host server concurrently will result in only one ofthe applications having functional push capabilities.

    Application Servers

    Tomcat 6.0 Including icepush.jar causes exception when redeploying application on Tomcat6.0 on WinXP.

    See ICE-5222 for a configuration work-around.

    Support

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

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

    http://jira.icefaces.org/browse/ICE-5226?focusedCommentId=29297&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_29297http://jira.icefaces.org/browse/ICE-5090http://jira.icefaces.org/browse/ICE-5222?focusedCommentId=27631&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_27631http://www.icefaces.orghttp://www.icefaces.org/JForum/forums/show/25.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 35

    ICEfaces-2.0.0-Alpha2 Release Notes

    This page last changed on Oct 29, 2010 by ken.fyten.

    ICEfaces 2.0.0 Alpha 2 Release Notes

    January 22nd, 2010

    Cannot resolve external resource into attachment.

    About This Release

    ICEfaces v2.0 Alpha 2 is an early developer milestone for the next-generation of ICEfaces, designed forJSF 2.0.

    Notable Changes and Improvements

    New "Window" Scope. This custom scope is designed to fill in a gap in the existing scopesavailable for JSF 2.0,as it exists for the life of a browser window or tab including surviving reloads and refreshes. There ismore informationin the Compatibility under Scopes.

    New Push Architecture. The ICEfaces Ajax Push feature has been completely re-implementedusing a all-new architecture forimproved performance and robustness.

    New Client APIs. New JavaScript APIs have been added for monitoring interesting events thatoccur on the client.More details are available in the JavaScript Client API documentation.

    ICEfaces 1.8.2 Component Suite Support. This release provides virtually complete support foran ICEfaces 2.0-compatible versionof the ICEfaces 1.8.2 Component Suite. See the Known Issues and ICEfaces 1.x Compatibilitysections for more information.

    New Documentation. Documentation for ICEfaces 2.0 is now exclusively available online in thisICEfaces Wiki.

    Maven2 Support. The download bundles include Maven2 .pom files for the ICEfaces libraries andassociated ant configurationfiles to support readily importing the ICEfaces 2.0 Alpha2 libraries into a local Maven2 repository.

    The maven resources in the bundle have been determined to be incorrect. CorrectedMaven2 resources can now be found in the following SVN repository:http://anonsvn.icefaces.org/repo/maven2/snapshots/

    JSF2 RI. The included JSF 2 RI "Mojarra" version has been updated to v 2.0.2. General Bug Fixes. Lots of bugs squashed since Alpha 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:

    General

    JSPs are not supported by ICEfaces 2.0, use Facelets instead. Due to a bug in the Sun Mojarra JSF 2 runtime library, navigation between ICEfaces and non-

    ICEfaces pages is not working in this release.It is anticipated that the upcoming Mojarra JSF v2.0.3 release will correct this issue.See ICE-5157 for details.

    In some cases an NullPointerException may be logged against theorg.icefaces.application.WindowScopeManager.

    http://wiki.icefaces.org/display/ICE/ICEfaces+2.0+Documentationhttp://anonsvn.icefaces.org/repo/maven2/snapshots/http://jira.icefaces.org/secure/IssueNavigator.jspa?reset=true&pid=10021&fixfor=10214https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1427http://jira.icefaces.org/browse/ICE-5157

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 36

    This runtime error can be safely ignored.

    1.8.x Compatibility

    The ice:inputFile component in the ICEfaces 1.8.2 Component Suite is not functional in this release. The following ICEfaces 1.8.2 Component Suite components are deprecated for ICEfaces 2.0 and are

    not functional.JSF 2.0 provides suitable replacements for these that should be used instead.

    ice:outputDeclaration (use Facelets standard approach instead) ice:outputBody (use h:body instead) ice:outputHead (use h:head instead) ice:outputHtml (use tag instead)

    The "ice:form" component must be used (in place of "h:form") when using the "ice" components viathe ICEfaces 1.8 Compatibility components. See ICE-5090 for details.

    Due to a bug in the Sun Mojarra JSF 2 runtime library, component binding does not work whenused within a View scope with the partial submit feature provided by the ICEfaces 1.8 compatibilitylibrary. See ICE-5226 for details.

    ICEpush

    ICEpush is limited to a single push application per server in this release. Viewing multiple ICEfacespush applications in the same browser from the same host server concurrently will result in only oneof the applications having functional push capabilities.

    Applications using the PushRender (or SessionRenderer in the compatibility library) may experiencesporadicpremature time-outs of related push groups, causing the push-updates to stop functioning. A pagereload willcorrect the problem. See ICE-227 for details.

    Application Servers

    Glassfish 3 When interacting with an ICEfaces 2 application on Glassfish 3, the warning below may be

    logged,with no impact on the application functionality:

    WARNING: PWC4011: Unable to set request character encoding to UTF-8 from context /basic, because request parameters have already been read, or ServletRequest.getReader() has already been called.

    See JIRA-5209 for details.

    Tomcat 6.0 Including icepush.jar causes exception when redeploying application on Tomcat6.0 on WinXP.

    See ICE-5222 for a configuration work-around.

    Support

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

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

    http://jira.icefaces.org/browse/ICE-5090https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1492http://jira.icefaces.org/browse/ICE-5226http://jira.icefaces.org/browse/ICE-5227http://jira.icefaces.org/browse/ICE-5209http://jira.icefaces.org/browse/ICE-5222?focusedCommentId=27631&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_27631http://www.icefaces.orghttp://www.icefaces.org/JForum/forums/show/25.page

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 37

    ICEfaces 2 Documentation

    This page last changed on Mar 30, 2011 by ken.fyten.

    General Documentation

    ICEfaces 2 Features Getting Started

    Downloading ICEfaces Supported Platforms Adding ICEfaces to Your Application Building and Running ICEfaces Examples with Maven Building and Running ICEfaces with Ant

    Key Concepts Automatic Ajax Direct-to-DOM Rendering Single Submit Ajax Push - Overview

    Core Framework Ajax Push - APIs Core Tags Annotations JavaScript Client API Handling Exceptions Configuration ICEpush Configuration JSF Configuration

    Components ICEfaces Components ICEfaces 2.0 Advanced Components

    - Animation 2.0- CheckboxButton 2.0- DateTimeEntry 2.0- FileEntry 2.0- LinkButton 2.0- PushButton 2.0- SliderEntry 2.0- TabSet 2.0

    ICEfaces Advanced Components- Accordion- AccordionPane- Ajax- Animation- CellEditor- CheckboxButton- ConfirmationDialog- ContextMenu- Column- ColumnGroup- DataTable

    - Data Model Lifecycle- DataExporter- DateTimeEntry- Dialog- Draggable- Droppable- ExcludeFromExport- FileEntry- LinkButton- MaskedEntry- Menu and Menubar- MenuButton- MenuItem- NotificationPanel

    http://wiki.icefaces.org//display/ICE/ICEfaces+Advanced+Componentshttp://wiki.icefaces.org//display/ICE/Accordionhttp://wiki.icefaces.org//display/ICE/AccordionPanehttp://wiki.icefaces.org//display/ICE/Ajaxhttp://wiki.icefaces.org//display/ICE/Animationhttp://wiki.icefaces.org//display/ICE/CellEditorhttp://wiki.icefaces.org//display/ICE/CheckboxButtonhttp://wiki.icefaces.org//display/ICE/ConfirmationDialoghttp://wiki.icefaces.org//display/ICE/ContextMenuhttp://wiki.icefaces.org//display/ICE/Columnhttp://wiki.icefaces.org//display/ICE/ColumnGrouphttp://wiki.icefaces.org//display/ICE/DataTablehttp://wiki.icefaces.org//display/ICE/Data+Model+Lifecyclehttp://wiki.icefaces.org//display/ICE/DataExporterhttp://wiki.icefaces.org//display/ICE/DateTimeEntryhttp://wiki.icefaces.org//display/ICE/Dialoghttp://wiki.icefaces.org//display/ICE/Draggablehttp://wiki.icefaces.org//display/ICE/Droppablehttp://wiki.icefaces.org//display/ICE/ExcludeFromExporthttp://wiki.icefaces.org//display/ICE/FileEntryhttp://wiki.icefaces.org//display/ICE/LinkButtonhttp://wiki.icefaces.org//display/ICE/MaskedEntryhttp://wiki.icefaces.org//display/ICE/Menu+and+Menubarhttp://wiki.icefaces.org//display/ICE/MenuButtonhttp://wiki.icefaces.org//display/ICE/MenuItemhttp://wiki.icefaces.org//display/ICE/NotificationPanel

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 38

    - Panel- Printer- ProgressBar- PushButton- Row- RowEditor- RowExpander- RowPanelExpander- SliderEntry- Submenu- TabSet- Tooltip

    ICEfaces Advanced Components Environment- ACE ThemeRoller support- ACE Source Artefacts and Generated Outputs- ACE Meta Class- ACE Component and Renderer Classes- ACE Adding Resources to Meta Class- ACE Skinning

    - ACE Sprite Image Generation- ACE CSS URL Mapping

    - ACE Disabled Styling Standard Portlet Development ICEfaces 1.x Compatibility API Documentation

    http://wiki.icefaces.org//display/ICE/Panelhttp://wiki.icefaces.org//display/ICE/Printerhttp://wiki.icefaces.org//display/ICE/ProgressBarhttp://wiki.icefaces.org//display/ICE/PushButtonhttp://wiki.icefaces.org//display/ICE/Rowhttp://wiki.icefaces.org//display/ICE/RowEditorhttp://wiki.icefaces.org//display/ICE/RowExpanderhttp://wiki.icefaces.org//display/ICE/RowPanelExpanderhttp://wiki.icefaces.org//display/ICE/SliderEntryhttp://wiki.icefaces.org//display/ICE/Submenuhttp://wiki.icefaces.org//display/ICE/TabSethttp://wiki.icefaces.org//display/ICE/Tooltip

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 39

    ICEfaces 2 Features

    This page last changed on Feb 11, 2011 by steve.maryka.

    New Features

    ICEfaces 2 provides some key feature enhancements over JSF 2, while inheriting all the new featuresavailable in JSF 2.

    JSF 2

    JSF 2 brings many beneficial features over JSF 1.2. There is a wealth of JSF 2 documentation availableon-line, but for a concise overview of new features in JSF 2, look here. The high points are enumeratebelow.

    Facelets is now a first-class citizen of the JSF spec, and is the principle view declaration language inJSF 2.

    A comprehensive composite component model enables easy development of components using onlymarkup.

    Ajax request processing and partial page updates have been incorporated into the JSF lifecycle. Partial State Saving drastically reduces state saving overhead. Broader support for system events is available. Improved navigation support includes implicit, conditional and preemptive navigation. HTTP GET now fully supported in the JSF lifecycle. New scopes, and support for custom scopes (see ICEfaces Window Scope). Annotations simplify configuration. Standardized resource loading is provided. Exception handling has been improved.

    ICEfaces 2

    ICEfaces 2 extends and simplifies JSF development in several key ways.

    Framework Enhancements

    The following framework enhancements extend the capabilities of the standard JSF 2 framework.

    Automatic Ajax

    ICEfaces 2 includes several innovative features that cumulatively result in Automatic Ajax, completelyeliminating the need for developers to wire page updates together using standard JSF tags.

    Direct-to-DOM Rendering (D2D) renders component markup to a server-side DOM that reflectsthe current client view. Each time the JSF lifecycle runs, a DOM comparison is done, and if thereare any changes, a concise set of page updates are sent back to the client to be applied to thepage. Simply adding the ICEfaces 2 library to an existing JSF 2 application will provide dynamicpartial-page-updates for all compliant components, without the need to specify the JSF component in your pages.

    Single Submit enables all components to automatically submit themselves based on userinteraction. The JSF lifecycle executes on just that single component, and then the entire renderphase is executed. From there the D2D mechanism determines the exact set of incremental pagechanges required in response to the Single Submit.

    Ajax Push

    Ajax Push enables real-time, multi-user collaboration in your JSF application. Any state change in theapplication can instantaneously push updates to other users of the application that need to be informed.New Ajax Push APIs make it simpler than ever to add collaborative features to your application.

    http://andyschwartz.wordpress.com/2009/07/31/whats-new-in-jsf-2

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 40

    Window Scope

    The custom Window scope is designed to fill a gap in the existing scopes available for JSF 2.0, as it existsfor the life of a browser window or tab, including surviving reloads and refreshes.

    Bean Management

    Annotations are provided that adjust the behavior of View-scoped beans. While View scope is a welcomeaddition for managing the lifecycle of beans, the behavior of View scope may not be intuitive in certainscenarios. Specifically, the annotations allow you to control the behavior of view-scoped beans acrossrepeated navigation to the same view, and during view disposal.

    Scoped Resource Registry

    The ResourceRegistry allows an application to register javax.faces.application.Resource instances at runtime. Each Resource is registered in a specified scope (Application, Session, View, Flash, or Window) sothat the resource can be garbage collected when the scope expires.

    Portlet Development

    Portlet support in ICEfaces 2 is provided by the PortletFaces Bridge, an implementation of the JSR 329:Portlet 2.0 Bridge for JSF. The portlet bridge spec technically applies to JSF 1.2, but the PortletFacesversion has been adapted to support JSF 2. The PortletFaces Bridge is tested and shipped with theICEfaces 2 distribution and can be used to develop portlet applications with ICEfaces.

    Client APIs

    In addition to enhancing the basic Ajax features provided by JSF 2, ICEfaces extends a client-side API formonitoring interesting events that occur on the client, such as form submission, event callbacks, and AjaxPush connection monitoring.

    Streamlined Configuration

    While JSF 2 simplifies configuration by leveraging annotations, ICEfaces also streamlines configuration inseveral areas. The ICEfaces-specific servlets and many of the configuration parameters in ICEfaces 1.xare no longer necessary with ICEfaces 2. This makes it even quicker and easier to add ICEfaces to yourJSF application, and greatly reduces the possibility of lost productivity due to minor configuration errors.

    Minimized Dependencies

    ICEfaces 2 core has no 3rd-party library dependencies outside of those libraries specified in the JEE 6"Web Profile". This further streamlines integration and software change management. Note that theICEfaces 2 Compatibility Libraries do require additional 3rd-party libraries when used (same as thoserequired by ICEfaces 1.8).

    Rich Components

    All components used under ICEfaces 2 inherit the benefits of Automatic Ajax, including the standard JSFcomponents. ICEfaces 2 offers a vast array of rich components beyond the standard ones available in JSF2.

    The ICEfaces Components include all components from ICEfaces 1.8 and use a compatibility layerthat enables them to function with JSF 2.0, and ICEfaces 2. These components provide a smoothmigration path from ICEfaces 1.8.

    The ICEfaces Advanced Components leverage all the features of the JSF 2.0 componentarchitecture, and are based on the all-new Advanced Component Environment (ACE). The YUIJavaScript library provides rich, client-side web controls, but packaged as JSF components, so youdon't need to know or use any JavaScript to include them in your application. Important featuresof the Advanced Components include flexible form definition, UI theming/skinning, and W3C ARIAaccessibility.

    The ICEfaces Enterprise Components are derived from the ICEfaces 1.8 Composite Component,but ported to the new JSF 2.0 Facelet architecture. Originally created by the ICEfaces application

    http://www.portletfaces.org/projects/portletfaces-bridgehttp://www.jcp.org/en/jsr/detail?id=329http://www.jcp.org/en/jsr/detail?id=329http://wiki.icefaces.org//display/ICE/ICEfaces+Advanced+Components

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 41

    development team, these components can greatly reduce development time for a host of commonapplication use cases. These components are available only in ICEfaces 2 Enterprise Edition.

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 42

    Getting Started

    This page last changed on Dec 09, 2010 by steve.maryka.

    Getting Started

    This section describes where to get ICEfaces 2, how to run the examples, and how to get started usingICEfaces 2 to develop your own applications.

    Downloading ICEfaces Supported Platforms Adding ICEfaces to Your Application Building and Running ICEfaces Examples with Maven Building and Running ICEfaces with Ant

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 43

    Downloading ICEfaces

    This page last changed on Dec 09, 2010 by steve.maryka.

    Downloading ICEfaces

    Download Bundles

    The latest official release of all ICEfaces products, including ICEfaces 2, can be found on the ICEfacesDownloads page.

    These download bundles are available in both binary and source form and include all the libraries andexamples for each release.

    Maven Repository

    For Maven users, the ICEfaces 2 pre-release libraries are available via the ICEfaces Maven2 Snapshotrepository.

    Note that the download bundles also contain Maven .pom and archetype files to enable easy import of theICEfaces libraries and example applications into a local Maven repository.

    Subversion

    ICEfaces releases may be exported in source-code form from the public SVN Repository.

    IDE Tool Integrations

    IDE integrations for ICEfaces 2 are currently available for NetBeans and Eclipse. These integrations canbe downloaded from the ICEfaces Downloads page.

    http://www.icefaces.org/main/downloads/os-downloads.ifacehttp://www.icefaces.org/main/downloads/os-downloads.ifacehttp://anonsvn.icefaces.org/repo/maven2/snapshotshttp://anonsvn.icefaces.org/repo/icefaces2/tags/http://www.icefaces.org/main/downloads/os-downloads.iface?category=Eclipse,NetBeans

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 44

    Supported Platforms

    This page last changed on Dec 09, 2010 by steve.maryka.

    Supported Platforms

    ICEfaces 2 has been tested to run on the following:

    Application Servers

    Glassfish 3 JBoss 6 Tomcat 6 & 7 (by including the JSF 2.0 runtime libraries in the project)

    ICEfaces 2.0 should be deployable on any JEE 6 Web Profile compliant platform.

    Additional testing and support of Application Servers is available in ICEfaces EE.

    Portal Containers

    Liferay 6

    http://www.icefaces.org/main/ajax-java/icefaces-ee.iface

  • Document generated by Confluence on Jan 19, 2012 16:38 Page 45

    Adding ICEfaces to Your Application

    This page last changed on Jun 15, 2011 by mark.collette.

    Configuring a JSF 2 Application to Use ICEfaces

    If you're just starting to build a JSF 2 application, or you've already started building one and you'd like toadd ICEfaces, it's simple to do:

    Add and tags

    JSF 2 includes head and body components that can be added to the page by using the and tags. ICEfaces 2 makes use of these components to automatically add certain scripts