I just tried to create a very simple custom component. It worked exactly iff the parent component is not a Trinidad component.
Turned out that overwriting encodeAll() has no effect in that case, since Trinidad's CoreRenderer does not use that method, but rather calls the individual encodeBegin()/encodeChildren()/encodeEnd() methods itself. The JSF 1.2 spec says: "Add new method, encodeAll(), which is now the preferred method for developers to call to render a child or facet()." So I think Trinidad's CoreRenderer (in 1.2) should really use this method, right? Well, ok, IMHO it's a little strange to talk about a "preferred method" in a spec. I would expect some definitive rules rather than a "would be nice if it were done this way".

