Ajuda na validação de campos

1 resposta
S

Eu fiz esse codigo para validação dos campos em brancos... criei uma variavel mensagem que recebe uma String caso esteja nulo.
Porem quando eu preenchoo tdu certinho.. ele devera exibir somente a mensagem "salvo", mais antes dessa mensagem... ele exibe uma joptionpane com a variavel mensagem em branco... ou seja, qdo digito tdu certinho ele exibir 2 joptionpane... a primeira com a variavel mensagem vazia, e a outra com a mensagem salvo.

se eu preencher tdu certinho devera aparecer so salvo...

o codigo

public class Fachadaocorrencia implements IFachadaOcorrencia {

    private boolean validar(Ocorrencia ocorrencia) {
        String mensagem = new String();
        boolean retorno = false;
        
        
        if (ocorrencia.getServicos().getDescricaoServ().equalsIgnoreCase("")) {
           mensagem = "Por favor, não esqueça de preencher o campo tipo de serviço";
            retorno = true;
            
            
        } else if (ocorrencia.getVeiculo().getPlaca().equalsIgnoreCase("")) {
            mensagem = "Por favor não esqueça de preencher o campo placa";
            retorno = true;
        }

        else if (ocorrencia.getData().equalsIgnoreCase("")) {
            mensagem = "Por favor, não esqueça de preencher o campo data";
            retorno = true;
            
            
        } else if (ocorrencia.getDescricao().equalsIgnoreCase("")) {
            mensagem = "Por favor, não esqueça de preencher o campo descrição";
            retorno = true;
            
            
        }else if (ocorrencia.getData().equalsIgnoreCase("")){
            mensagem = "Por favor, não esqueca de preencher o campo data";
            retorno = true;
       
        
        }else if (ocorrencia.getCliente().getNomecli().equalsIgnoreCase("")){
            mensagem = "Por favor, não esqueca de preencher o campo Nome do Cliente";
       retorno = true;
        }else if (ocorrencia.getDescricao().equalsIgnoreCase("")){
            mensagem = "Por favor, não esqueca de preencher o campo Descrição da Ocorrencia";
            retorno = true;}
            
    
        return retorno;
    
    }
ublic boolean inserirOcorrencia(DomainObject domainObject) {


      IDAOocorrencia dao = new DAOOcorrencia();

         Ocorrencia ocorrencia = (Ocorrencia) domainObject;

         if (validar(ocorrencia)) {
   dao.inserirOcorrencia(domainObject);


         } else {
   JOptionPane.showMessageDialog(null, "SALVO");
    }


        return true;
    }

1 Resposta

danielfigueiredoc

Cara você ta retornando false se for pra inserir, e no if vc só insere se retornar true, logo ele só vai inserir se você deixar algo em branco.
Mude o if pra negação ! ou troque o valor incial do boolean pra true dentro do metodo, e atribui false se entrar em algo if.
Agora como ele exibi dois jOptionPanel é um mistério, sendo que você só chama ele uma vez na classe toda.

Criado 13 de outubro de 2009
Ultima resposta 14 de out. de 2009
Respostas 1
Participantes 2