I am guessing the odd behavior you mention is things render in weird order. Its because of the order that things are parsed in a page, a well known issue with JSF 1.1 (and apparently fixed in 1.2). Basically if you want to incorporate html code into a JSF page, you need to wrap it in "verbatim" tags. Or that library mentioned above, which appears to just be jsf tags that render normal html, although I have never used it.