Eu procurei minha duvida no GUJ mais não a localizei então resolvi criar um topico para ela. Imagino que seja uma besteira mais não estou achando elegante a forma como estou tratando isso na aplicação que estou construindo. Bem vamos lá !
Eu tenho um JFormatedTextField para alguns campos na minha aplicação (CEP, Telefone, Fax, CNPJ e etc). Todos já estão formatados para só receber números, mais um problema que eu fico me deparando é que meus campos podem ficar em branco pois ambos não são obrigatorios. Nisso para não ocorrer nenhum erro dentro da minha aplicação, pois ao capturar o valor contido no JFormatedTextField eu o converto para o tipo númerico adequado (Long.ParseLong) e se eu não verificar se o mesmo está em branco e tentar fazer essa conversão um erro será apresentado. O problema é que não acho elegante em todos os campos eu ter que fazer: if (maskCnpj.getValue() != null) {
//pega valor
}
O jeito correto seria esse mesmo ? Vocês tem alguma outra forma de fazer isso ??
Querendo ou não, é a forma que se tem para validar formulários.
É claro que se estamos falando em campos em branco, o adequado seria utilizar os métodos trim().isEmpty().
Dessa forma garante que o campo não está em branco. De qualquer forma, não tem como fugir de validações desse tipo caro colega.
Você pode até usar de polimorfismo para validar seus campos, o que talvez seja algo mais elegante.
uma forma elegante é reescrever o componente adequado para cpf, para números, etc assim vc ira escrever somente uma vez e usar para o resto da vida.
ja fizeram isso, basta vc procurar na net. eu mesmo ja fiz um proprio, mas esta na minha casa.
procure por jcpffield. jnumberfield. jcnpjfiled + ou - assim que vc acha pronto.