Validação de campo input apenas números

JSP

<cus:brPanelGroup>
            <cus:brInputText id="ValorReal" size="25" maxlength="18" 
                value="#{Bean.valor}" validator="moedaValidator">
                <f:convertNumber pattern="#,##0.00"></f:convertNumber>
            </cus:brInputText>
   </cus:brPanelGroup>

faces-config



 <validator>

  <validator-id>moedaValidator</validator-id>

  <validator-class>br.com.validdator.MoedaValidator</validator-class>

  </validator>

classe java

import java.math.BigDecimal;

import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;

public class MoedaValidator implements Validator {
       /**
        * Método responsável por validar os campos com moeda. Caso ocorra algum erro lança uma ValidatorException.
        */
       public void validate(FacesContext ctx, UIComponent comp, Object val) throws ValidatorException {
           BigDecimal valor = (BigDecimal) val;
           if(val == null)
                return;                
            if (valor.intValue() == 0) {
               FacesMessage message = new FacesMessage("Preencha com o valor válido maior que zero");
               message.setSeverity(FacesMessage.SEVERITY_ERROR);
               throw new ValidatorException(message);
           }
       }
}

apareci o seguinte erro na jsp MethodBinding attribute values must be EL expressions. ao debug não chama a classe MoedaValidator alguém sabe onde estou errado?