Just wanted to share how I fixed a "Duplicate Component Id" error I was receiving.
From the research I did, all JSF components are kept in a component tree with all the ID's preserved from page to page. When I was dynamically adding a new SelectItem to a SelectOneMenu, it was trying to assign an Id that was already on the component tree.
I discovered a method called setTransient(boolean) that controls whether to either preserve my Faces jsp pages and or basically load the page from scratch assigning new Id's to whatever components are loaded. A value of false loads the page from scratch.