Validar campo no servidor

Como tenho falado, eu estou em processo de aprendizagem com Java Web. Tenho uma página, conforme disposto abaixo:

&lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"&gt; &lt;title&gt;Cadastro de Clientes&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;h1&gt;Cadastro de Clientes&lt;/h1&gt; <br></br> &lt;form action="multizone.jsp" method="POST"&gt; <p> Nome: &lt;input type="text" name "nome"/&gt; CPF/CNPJ: &lt;input type="text" name "cpf_cnpj"/&gt; RG: &lt;input type="text" name "rg"/&gt; </p> <p> Endereco: &lt;input type="text" name "endereco" size="50"/&gt; Bairro: &lt;input type="text" name "bairro"/&gt; Cidade: &lt;input type="text" name "cidade"/&gt; </p> &lt;/body&gt; &lt;/html&gt;
e tenho essa função para validar cnpj:

[code]public class ValidaCpfCnpj {
public static boolean valida_cpf_cnpj(final String CNPJ_CPF) {

	if(CNPJ_CPF.length() == 11) { //CPF
		int acumulador1 = 0;
		int acumulador2 = 0;
		int resto = 0;
		StringBuffer resultado = new StringBuffer();
		String digitoVerificadorCPF = CNPJ_CPF.substring((CNPJ_CPF.length() - 2),
														  CNPJ_CPF.length());
		for(int i = 1; i &lt; (CNPJ_CPF.length() - 1); i++) {
			acumulador1 += (11 - i) * Integer.valueOf(CNPJ_CPF.substring((i - 1), i));
			acumulador2 += (12 - i) * Integer.valueOf(CNPJ_CPF.substring((i - 1), i));
		}
		resto = acumulador1 % 11;
		if (resto &lt; 2) {
			acumulador2 += 2;
			resultado.append(2);
		}
		else {
			acumulador2 += 2 * (11 - resto);
			resultado.append((11 - resto));
		}
		resto = acumulador2 % 11;
		if (resto &lt; 2) {
			resultado.append(0);
		}
		else {
			resultado.append((11 - resto));
		}
		return resultado.toString().equals(digitoVerificadorCPF);
	}
	else if(CNPJ_CPF.length() == 14) { //CNPJ
		int acumulador = 0;
		int digito = 0;
		StringBuffer CNPJ = new StringBuffer();
		char[] CNPJCharArray = CNPJ_CPF.toCharArray();
		CNPJ.append(CNPJ_CPF.substring(0, 12));
		for(int i = 0; i &lt; 4; i++) {
			if(((CNPJCharArray[i] - 48) &gt;= 0) && 
			   ((CNPJCharArray[i] - 48) &lt;= 9)) {
				acumulador += (CNPJCharArray[i] - 48) * (6 - (i + 1));
			}
		}

		for(int i = 0; i &lt; 8; i++) {
			if(((CNPJCharArray[i + 4] - 48) &gt;= 0) && 
			   ((CNPJCharArray[i + 4] - 48) &lt;= 9)) {
				acumulador += (CNPJCharArray[i + 4] - 48) * (10 - (i + 1));
			}
		}

		digito = 11 - (acumulador % 11);
		CNPJ.append((digito == 10 || digito == 11) ? &quot;0&quot; : digito);
		acumulador = 0;
		for(int i = 0; i &lt; 5; i++) {
			if(((CNPJCharArray[i] - 48) &gt;= 0) && 
			   ((CNPJCharArray[i] - 48) &lt;= 9)) {
				acumulador += (CNPJCharArray[i] - 48) * (7 - (i + 1));
			}
		}
		for(int i = 0; i &lt; 8; i++) {
			if(((CNPJCharArray[i + 5] - 48) &gt;= 0) && 
			   ((CNPJCharArray[i + 5] - 48) &lt;= 9)) {
				acumulador += (CNPJCharArray[i + 5] - 48) * (10 - (i + 1));
			}
		}
		digito = 11 - (acumulador % 11);
		CNPJ.append((digito == 10 || digito == 11) ? &quot;0&quot; : digito);
		return CNPJ.toString().equals(CNPJ_CPF);		}
	return false;	}

}[/code]
Agora é o seguinte: Como eu faço para ao sair do campo(HTML) cpf_cnpj do meu formulário na minha página(lado cliente) e validar o cnpj ou cpf dessa classe que estará rodando no lado servidor?

1 - cpf e diferente de cnpj

tu ta usando 2 tipos de dados em 1. se tu pegou um banco legado tudo bem… mas se tu ta fazendo do Zero da uma lida em POO OO POG e vc vai ver que Classe CPF e diferente de Classe CNPJ

tu pode usar Jquery para fazer essa validação facinho !

http://imasters.uol.com.br/artigo/12384/jquery/validacao_de_formularios_com_jquery/

Primeiramente, obrigado pela resposta, mas acho que não é isso. Esse exemplo mostra como validar, no sentido de verificar se todos os campos foram preenchidos. O que eu quiz fazer é que no momento em que eu preencher o campo cnpj, por exemplo, ele verifica se é ou não um cnpj válido. Por isso ele deve validar pela função que está rodando no lado servidor. Essa é minha dúvida. Quanto a ser cpf ou cnpj juntos ou não, no momento não vem ao caso. Eu só coloquei lá, porque eu baixei ela assim. Quanto a questão de melhoria no código, concordo plenamente com você, junior, mas eu coloquei apenas para exemplificar que ela roda no lado servidor.

ok !