This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Can the tabs be -- literally -- anything? Or are there a finite number of tabs, of which you only want some to be rendered each time? if that is the case, you can just set the rendered property on each tab, and link that into a backing bean value.
If that won't work for you, another option might be to bind the rich:tabPanel to a UITabPanel in the backing bean. Then, on construction of your bean, you can add any UITab children to this UITabPanel. Once you have these objects in the backing bean, you can basically manipulate them however you like before they are rendered on the page.