Gostaria de saber se alguém tem algum artigo/tutorial/exemplo de uma boa prática de como se trabalhar com mensagens para usuário relacionadas a regra de negócio.
Não estou falando de mensagens de validação de dado como “nome não informado”, mas sim de regra de negócio como “você não pode inserir duas pessoas com o mesmo nome”.
try {
servico.cadastrarPessoa(pessoa);
} catch (BusinessException be) {
// be.getMessageKey() contem "message_jaExistePessoaComNomeCadastrado", que deve estar no resourcebundle da aplicaçao
String mensagem = localizarNoResourceBundle (be.getMessageKey());
exibirMensagemAoUsuario(mensagem);
}
Outra maneira é ter um outro resourcebundle na camada de negócio. Assim a mensagem já viria pronta para a camada de apresentação.
gomesrod
Revendo o post original não tenho certeza se entendi perfeitamente a dúvida…
se não tiver nada a ver com isso pode ignorar
tiagowanke
gomesrod,
Sua resposta tem a ver com a dúvida sim, muito obrigado.
A questão é que estou utilizando o pattern chain of responsibility e não achei nenhum exemplo desse pattern tratando mensagens para o usuário.
A cada chain ele chama a próxima (se existir) a ser executada, só que ai não posso lançar uma Exception senão não vai executar as “chains” até o fim, pois a exceção irá parar.
Não sei se fui claro, qualquer coisa posso colocar algum código de exemplo.