Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Tratar Exceptions no Controller

Olá, gostaria de saber se é recomendável tratar as exceptions dentro do controller utilizando try{ } catch{ } ? No meu controler, eu recebo um objeto do tipo Diario, primeiramente eu valido se o diário foi preenchido corretamente(Bean Validation), logo em seguida eu faço uma validação que na verdade é uma regra de negócios do sistema. Tratar essa exception dessa forma é uma boa?


@Controller
public class DiariosController {

@Inject //repositorio
    private Diarios diarios;
@Post("/diarios/salvar")
    public void salvar(@Valid Diario diario) {

        validator.onErrorForwardTo(this).diario(diario);
        try {
            diario.setUsuarioCriacao(usuarioLogado.getUsuario());
            diario.setNumero(diarios.numeroProximaPublicacao());
            Diario diariocirculacao = diarios.buscarDiarioPorDataCirculacao(diario.getDataCirculacao());    
            if(diariocirculacao != null){    
                throw  new BusinessException("Já existe um diário criado com esta data de circulação");
            }
            diarios.salvarDiario(diario);    
            result.redirectTo(this).lista();

        } catch (BusinessException  e) {
            result.include("mensagem", e.getMessage());
            result.redirectTo(this).lista();
        }
    }
}
1 resposta
solução!

Acho que nesse caso a exception foi demais.. vc pode pegar o código do catch e colocar dentro do if.