When I went to investigate the ids we generate, I found that the framework was already assigning them generated ids, which we were stomping over with our own custom generated id scheme. I removed the code for our custom generated ids, leaving the components with the UIViewRoot generated ids, and the Tags with null ids. This appears to work fine with JSF 1.1 and JSF 1.2.
TRUNK
Subversion 17278
ICEfaces 1.7 branch
Subversion 17279
icefaces\core\src\com\icesoft\faces\webapp\parser\IceOutputTextTag.java
icefaces\core\src\com\icesoft\faces\webapp\parser\XhtmlTag.java
Mark, please comment on whether these ids are necessary. The idea is that elimination of unnecessary Strings will reduce server memory consumption.