| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/04/2007 17:50:48
|
trevezani
Entusiasta Java
Membro desde: 29/03/2006 11:03:54
Mensagens: 23
Offline
|
E ai Pessoal,
Estou querendo achar uma forma de capturar as exceções do meu projeto e exibi-las, ao invés do console, em uma janela swing. Existe alguma forma de fazer isso?
Desde já agradeço a atenção,
[],s
Alberto
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/04/2007 17:56:40
|
von.juliano
GUJ Master
![[Avatar]](/images/avatar/efb61dd984183066a8815190a28bd956.jpg)
Membro desde: 15/01/2007 13:31:32
Mensagens: 1266
Offline
|
Isso vai usar JOptionPane para imprimir a mensagem de erro, mas não acho uma boa idéia, a mensagem pode ser meio grande!
|
É difícil manter-se religioso quando algumas pessoas simplesmente não são carbonizadas por raios!
Desenvolvendo software de forma simples! - http://vonjuliano.wordpress.com/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/04/2007 17:57:11
|
Anlugifa
Entusiasta Java
![[Avatar]](/images/avatar/4bdef5fb6ba59b1bfe0db68275c452ab.jpg)
Membro desde: 20/12/2006 12:51:39
Mensagens: 15
Localização: Curitiba
Offline
|
Use os métodos static da class JOptionPane.
Ex:
JOptionPane.showMessageDialog(null, "Mensagem");
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/04/2007 18:03:05
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Thread.setUncaughtExceptionHandler
Deve resolver o seu problema. Todas as exceções Runtime que não são capturadas são enviadas para esse método. Você então pode redireciona-las para onde quiser. Aqui usamos para simplesmente dar uma única vez a mensagem "There are uncaught exceptions, see log for details" e gravamos a exceção em si num log textual.
Tudo muito limpo e sem aterrorizar o pobre do usuário.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/04/2007 18:12:01
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
von.juliano wrote:
Isso vai usar JOptionPane para imprimir a mensagem de erro, mas não acho uma boa idéia, a mensagem pode ser meio grande!
Nunca faça um try...catch como esse. Se você tiver absoluta certeza que deve faze-lo, pense novamente e trate as exceções específicas. Senão novas exceções no futuro também poderão ser pegas. E lembre-se que exceções de Runtime também serão capturadas nesse código horrível aí em cima.
Do contrário, use um UncaughtExceptionHandler para capturar as exceções de Runtime que eventualmente você não conseguiu capturar e trate as exceções específicas, seja se livrando do problema, dando uma mensagem ao usuário ou redirecionando a exceção para a classe de cima.
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/04/2007 18:18:13
|
trevezani
Entusiasta Java
Membro desde: 29/03/2006 11:03:54
Mensagens: 23
Offline
|
Minha idéia é capturar as exceções que não estão tratadas no Try/Catch. Por exemplo: Ocorreu uma exceção em uma SQL que não está tratado, o erro irá ocorrer e irá gerar no console. Eu quero capturar essa exceção e mostrar em uma janela.
=)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/04/2007 18:49:36
|
trevezani
Entusiasta Java
Membro desde: 29/03/2006 11:03:54
Mensagens: 23
Offline
|
Obrigado pelas dicas pessoal. Pesquisei a dica do ViniGodoy e consegui fazer o que estava querendo. Segue abaixo o código implementado:
No Main:
Classe que captura as exceções
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2009 09:38:44
|
fksalviano
Smalltalk
![[Avatar]](/images/avatar/34e23662528a8f9f69939e1224145be1.jpg)
Membro desde: 08/01/2009 09:37:30
Mensagens: 2
Offline
|
Valeu pela dica, estava procurando exatamente por isso mesmo!!
Abraços!
Obrigado.
|
"Quem foi que disse que a vida é fácil..."
Capitão Nascimento - Bope - Tropa de Elite. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2009 11:10:33
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
De nada.
É estranho receber agradecimento 2 anos depois de dar a dica...
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/06/2009 13:49:26
|
fksalviano
Smalltalk
![[Avatar]](/images/avatar/34e23662528a8f9f69939e1224145be1.jpg)
Membro desde: 08/01/2009 09:37:30
Mensagens: 2
Offline
|
É porque estou começando com java agora e, como precisei disso, procurei no fórum e achei sua dica!
Abraço!
|
"Quem foi que disse que a vida é fácil..."
Capitão Nascimento - Bope - Tropa de Elite. |
|
|
 |
|
|