It's a Good Thing to ensure that there are IDs present the following JSF tags:
anything that's a NamingContainer
Columns
Form
Tree
elements that are "form fields"
any sort of input field
anything that is a button
elements that send commands
Why? For portlets it is actually useful to not specify an ID on the NamingContainer so that it is automatically assigned using a dynamic namespace. That way you can have two instances of the same portlet on a page and the HTML ids will be different. --DaveBrondsema