Para quem trabalha com o NetBeans, o próprio sistema já tem um método de validação de CPF, CNPJ, E-mail...

Para se fazer a validação, basta que na classe do objeto seja destacado o tipo de validação. Por exemplo:

Na classe Cadastro:

 

public class Cadastro {
    @CPF
    private String cpf;
    @CNPJ
    private String cnpj;
    @Email
    private String email;
    @TituloEleitoral
    private String titulo;

//GET & SET

}

Com o enunciado acima, ele vai solicitar os seguintes imports:
import org.hibernate.validator.constraints.br.CPF;
import org.hibernate.validator.constraints.br.CNPJ;
import org.hibernate.validator.constraints.br.TituloEleitoral;
import org.hibernate.validator.constraints.Email;

Caso você queira personalizar a mensagem de erro, basta fazer o seguinte:
@CPF (message="CPF inválido!")
@CNPJ (message="CNPJ inválido!")
@Email (message="E-mail inválido!")
@TituloEleitoral (message="Título de Eleitor inválido!")

Caso não coloque o (message="Sua mensagem!"), a mensagem padrão (que é muito parecida com as mensagem acima) ficarão implícitas na função.

Lembrando que para aparecer a mensagem de erro mediante esta situação de referência na classe do objeto, você vai precisar colocar o growl para mostrar o alarme, basta adicionar a tag abaixo dentro do formulário.
<p:growl id="growl" showDetail="true" sticky="true" />

Mediante tal cenário, o título e a mensagem do Growl serão as mesmas, mas no geral, é uma validação rápida, e de fácil implantação.

Possível erro do growl.

Reparei também que nos objetos acima, é possível utilizar o replace para retirar a máscara dos mesmos, porém, não funciona no título eleitoral, que deverá ser colocado com a máscara delimitadora de 12 caracteres, porém, não usar o ".", o "-" ou a "/".