title: ZF2 Filtering Select for setting other than empty option
body: <p>my destination is to filter if a select box has a choice other than empty option.
  If I set the Filter 'required' to true I get error in every case that the select box doesn't has to be empty. 
  By setting the 'required' to false I get a valid form but even if I don't make a choice in Select Element.
  Is there any other way to check another selection than the empty option?</p>
  
  <pre><code>//class for creating a Fieldset
  class FieldsetCreate extends Fieldset implements InputFilterProviderInterface
  {
  ...
    public function getRoofProductsElement()
    {
       $element = new Select(ProductFormInterface::FIELD_ROOFPRODUCT);
       $element-&gt;setLabel('Set roof products');
       $element-&gt;setAttribute('id', ProductFormInterface::FIELD_ROOFPRODUCT);
       $element-&gt;setEmptyOption('Select...');
       $element-&gt;setValueOptions(array('1'=&gt;'None', '2' =&gt; 'Is Roof'));
       $element-&gt;setAttribute('onchange', 'setRoofProductSelection(this);');
  
       return $element;
    }
  ...
     public function getInputFilterSpecification()
     {
       return array(
           array(
               'name' =&gt; ProductFormInterface::FIELD_TYPESELECTION,
               'required' =&gt; false,
  
           ),
           array(
               'name' =&gt; ProductFormInterface::FIELD_ROOFPRODUCT,
               'required' =&gt; false,
              'validators' =&gt; array(
                  new \Zend\Validator\GreaterThan(array('min' =&gt; 0)),
               )
            ),
            array(
               'name' =&gt; ProductFormInterface::FIELD_MANUFACTURERS,
               'required' =&gt; false,
            )
         );
    }
  }
  
  //Form Factory to Set Fieldset To Form and return the form
  class ProductTypeFormFactory extends ProductAbstractFormFactory 
  implements FactoryInterface
  {
  
     public function createService(ServiceLocatorInterface $serviceLocator)
     {
         $form = new ProductForm('productForm');
         $form-&gt;addCsrfElement();
  
         $service = $serviceLocator-&gt;get('Product\Service\Product');
         $form-&gt;
             add($this-&gt;createFieldsetCreate($service-&gt;fetchAllProductTypes()));
         $form-&gt;setInputFilter(new InputFilter());
         $form-&gt;setValidationGroup($this-&gt;createValidationGroup());
         return $form;
     }
  }
  
  //The Service with Method createProduct
  class ProductService
     implements EventManagerAwareInterface, ProductServiceInterface
  {
     public function createProduct($typeId, $manufacturerId, $isRoof, $form)
     {
        $formArray = array(
            ProductFormInterface::FIELD_TYPESELECTION =&gt; $typeId,
            ProductFormInterface::FIELD_MANUFACTURERS =&gt; $manufacturerId,
            ProductFormInterface::FIELD_ROOFPRODUCT =&gt; $isRoof
  
        );
  
        $form-&gt;setData($formArray); 
        if ($form-&gt;isValid()) {
            var_dump('VALID');
        } else {
            var_dump($form-&gt;getMessages());
        }
     }
  </code></pre>
  
  <p>Thats shortest code I can give.
  Although I use the GreaterThan Validator form is valid by leaving the empty option on RoofProduct Element which is 0</p>