private int getSize(UIComponent component) {
   int size = UIComponentUtil.getPrimitiveIntAttribute(component, JsfConstants.SIZE_ATTR);
   if (0 < size) {
     return size;
   }
   size = 0;
   for (Iterator it = new SelectItemsIterator(component); it.hasNext(); ) {
     SelectItem item = (SelectItem) it.next();
     if (item instanceof SelectItemGroup) {
       SelectItemGroup itemGroup = (SelectItemGroup) item;
       size += itemGroup.getSelectItems().length;
     }
     size++;
   }
   return size;
 }