code: public int doStartTag() throws JspException
      {
          Object val = evaluateDataSource();
          _defaultSelections = (List) evaluateDefaultValue();
  
          // if there were expression errors report them
          if (hasErrors())
              return SKIP_BODY;
  
          buildMatch(val);
          if (hasErrors())
              return SKIP_BODY;
  
  
          _formatters = new ArrayList();
          _optionList = new ArrayList();
  
          // Walk the options data source
          _dynamicOptions = evaluateOptionsDataSource();
          if (_repeater) {
              _repCurStage = _order[0];
              boolean valid = doRepeaterAfterBody();
              if (!valid)
                  return SKIP_BODY;
              DataAccessProviderStack.addDataAccessProvider(this, pageContext);
          }
  
          // Continue processing this page
          return EVAL_BODY_BUFFERED;
      }
docs: Render the beginning of this select.
  @throws JspException if a JSP exception has occurred