Bem, estou usando o Stella pra validar as IE’s. O problema é que meu campo recebe um ‘long’ e consequentemente, numeros com iniciados com 0 (zero) tem o 0 (zero) omitido por causa que zero à esquerda é irrelevante. Bem, eu tenho uma classe que completa com zero e meu numero é 098765432 (IE do CE não formatado e não é o meu IE real, mas nos meus testes estou usando o IE real). O número é complementado direitinho, mas quando eu passo pro método assertValid ele dá o seguinte error: IEError: INVALID CHECK DIGITS.
Segue minha classe completa.
import br.com.caelum.stella.validation.Validator;
import br.com.caelum.stella.validation.ie.IECearaValidator;
import clienteJ.Cliente;
/**
*
* @author lucas
*/
public class Validar {
public static void main(String[] args) {
// inscricaoEstadual("09.876.543-1");
inscricaoEstadual("[telefone removido]");
}
public static void inscricaoEstadual(String ie) {
Cliente clienteA = new Cliente();
clienteA.setIeRg(Formata.getLong(ie));
Validator validator = new IECearaValidator(false);
// validator.assertValid(Formata.formatarValores(clienteA.getIeRg(), Formata.Padrao._9_DIG));
String num = Formata.formatarValores(clienteA.getIeRg(), Formata.Padrao._9_DIG);
validator.assertValid(num);
System.out.println(validator);
System.out.println(num);
System.out.println(clienteA.getIeRg());
}
}