The answer is simple. Never. The purpose of this post is to explore what ICEfaces really is, and why it's counterproductive.
What is ICEfaces?
What's the problem with ICEfaces?
The problem with ICEfaces, like any other framework similar to it, is simple. If your web application happens to use every feature that ICEfaces provides, with no variation, then sure, ICEfaces would probably be fine for you. The problem however, is that if you want to create specific functionality or behaviors that ICEfaces does not offer, you're forced to end the pain task of integrating your custom functionality with ICEfaces.
ICEfaces is not magic