Duvidas sobre MSG de erros

3 respostas
programaçãojava
J

Pessoal, uma duvida de iniciante, que aparentemente é simples.
Sobre messages de erros, muitas vezes não uso Try\catch para validar algumas situações, exemplo:
validar se o cara digitou uma data valida. Faço esse teste no “Model” na função:

public void setDataCnh(String data) {

if (validaData(data)){

this.validadecnh = formataData(data);

}

}
public boolean validaData(String data){

int dia = Integer.parseInt(data.substring(0,2));

int mes = Integer.parseInt(data.substring(3,5));
if (dia<1 || dia>31 || mes<1 || mes>12){
       return false;
   }else{
       return true;
   }        
}

public String formataData(String DataInicial) {
    Date data = null;
    String dataBanco;
    try {
        data = new SimpleDateFormat("dd/MM/yyyy").parse(DataInicial);
        dataBanco = new SimpleDateFormat("yyyy/MM/dd").format(data);
        return dataBanco;
    } catch (java.text.ParseException e) {
        return null;
      }
}

Minha duvida é onde e como eu apresentaria uma msg de erro tipo “Digitou data errada”, eu sei que posso usar um “joptionPanel” para mostrar, mas segundo as regras do MVC seria correto usar isso na camada Model?

3 Respostas

darlan_machado

Se você vai usar o padrão MVC, qual é a camada em que você tem interação com o usuário? Se souber essa resposta, sabe onde apresentar a mensagem de erro

LuanFroehlich

Eu tinha pensando em primeiro validar o valor na camada de Controle e depois passaria o valor validado e formatado pra o Model. Estaria certo assim?
Eu colocaria a mensagem na Exception, retornaria o erro pro pai da chamada que apresentaria o erro para o usuário. Seria valido assim? Teria um caminho melhor?

darlan_machado

É um bom caminho. Você valida no controller, caso tenha alguma inconformidade, dispara a exceção, registra log e apresenta mensagem clara ao usuário.
Caso contrário, segue, de boas.

Criado 21 de agosto de 2018
Ultima resposta 21 de ago. de 2018
Respostas 3
Participantes 3