Dúvidas com validação no JSF

Olá a todos.
Pessoal estou fazendo uma aplicação usando JSF e estou encontrando dificuldade em fazer a validação de um campo. Eu escrevi meu próprio método para validar um campo que recebe uma inscrição estadual, o método apenas valida a inscrição digitada. Até aqui tudo bem, acontece que quando a inscrição é inválida a aplicação segue seu fluxo normal, executa a regra de navegação…não deveria ficar na mesma página até que a validação fosse satisfeita?

Esse é meu método validador:

public void validarInscricaoEstadual(FacesContext context, UIComponent toValidate, Object value) {
        String paramInscricao = (String) value;
        if (!Validator.validarInscricaoEstadual(paramInscricao)) {
            FacesMessage message = new FacesMessage("A Inscrição Estadual Digitada é Inválida.");
            context.addMessage(toValidate.getClientId(context), message);
        }
    }

Aqui meu jsp que chama o método:

<h:inputText id="fieldInscricao" onkeypress="return inibe_char(event);"
                                     value="#{icms.inscricao}"
                                     size="20" maxlength="9"
                                     required="true"
                                     requiredMessage="Digite a Inscrição Estadual antes de Continuar."
                                     validator="#{icms.validarInscricaoEstadual}"
                                     immediate="false"/>

obs: Quando algum campo obrigatório na tela deixa de ser preenchido, mostra as duas mensagens: a do campo obrigatorio e a do campo que está sendo validado.

desde já muito obrigado!!!

vc precisa disparar um ValidatorException:

FacesMessage message = ... message.setSeverity(FacesMessage.SEVERITY_ERROR); throw new ValidatorException(message);

Valeu bobmoe , deu certo.

um abraço.