Use <f:selectItems>
instead of <f:selectItem>
. Note the s at the end of the former component.
<ice:selectOneMenu size="1" style="width: 180px">
<f:selectItems value="#{stockManagedBean.listeCategoriesItem}" />
</ice:selectOneMenu>
Also, it would be good to also have a field in your bean that will handle the value of the selected item in your selectOneMenu
.
<ice:selectOneMenu size="1" style="width: 180px"
value="#{stockManagedBean.selectedCategory}">
<f:selectItems value="#{stockManagedBean.listeCategoriesItem}" />
</ice:selectOneMenu>
And in your managed bean:
@ManagedBean
public class StockManagedBean {
private String selectedCategory;
//rest of your code
//getters and setters...
}