Valeu Paulo aqui deu Certo. Para eu imprir linha a linha eu fiz algumas alterações:
Veja como ficou: public static void getStackTrace(Exception e) { StringWriter sw = new StringWriter(); e.printStackTrace(new PrintWriter(sw)); StringBuffer sbStactTrace = sw.getBuffer(); StringBuffer sbOut = new StringBuffer(); for (int i = 0; i <= sbStactTrace.length() - 1; i++){ char ch = sbStactTrace.charAt(i); if (ch != '\n'){ sbOut.append(ch); } if (ch == '\n'){ System.out.println(">=" + sbOut); sbOut = new StringBuffer(); } } } []´s Kleber Rodrigo de Carvalho ----- Original Message ----- From: "Paulo Silveira" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]>; "Kleber Rodrigo de Carvalho" <[EMAIL PROTECTED]> Sent: Tuesday, March 25, 2003 11:51 PM Subject: Re: [java-list] printStackTrace() customizado > Ola Kleber, > > Legal voce ter procurado se sua duvida ja havia sido respondida, antes de mandar a mensagem! > > Utilize um método como este: > > public static StringBuffer getStackTrace(Exception e) { > StringWriter sw = new StringWriter(); > e.printStackTrace(new PrintWriter(sw)); > return sw.getBuffer(); > } > > Ai passe uma Exception como argumento. Faca um teste: > > System.out.println(getStackTrace(new RuntimeException())); > > Bem, voce pode fazer esse metodo receber um Throwable ai, se voce quiser imprimir stacks dos Errors tambem. > > Falou! > > ====================== > Paulo Eduardo Azevedo Silveira > Grupo de Usuários Java > http://www.guj.com.br/ > > On Tue, 25 Mar 2003 17:34:42 -0300, "Kleber Rodrigo de Carvalho" <[EMAIL PROTECTED]> escreveu : > > > De: "Kleber Rodrigo de Carvalho" <[EMAIL PROTECTED]> > > Data: Tue, 25 Mar 2003 17:34:42 -0300 > > Para: <[EMAIL PROTECTED]> > > Assunto: [java-list] printStackTrace() customizado > > > > PessoALL > > > > Pesquisei no arquivo da lista e encontrei uma solução para imprimir "linha a > > linha" do printStackTrace. > > Só que para isso eu preciso do J2SE 1.4 ou superior. > > > > Veja o comentário: > > Instead of using Throwable.printStackTrace(), you can use various methods in > > the StackTraceElement class of J2SE 1.4. > > > > > > Será que existe alguma forma de eu conseguir implementar isso no J2SE1.3.x ? > > Alguém já fez isso usando o J2SE1.3.x ? > > > > Fica complicado para mim nesta fase do projeto migrar para uma versão mais > > atual do J2SE 1.4. > > > > Qualquer ajuda é bem vindo ! > > > > ps.: Veja a funcionalidade abaixo, que eu encontrei no arquivo da java-list. > > > > []´s > > Kleber Rodrigo de Carvalho > > > > > > De: Felipe Santos > > Assunto: RES: [java-list] printStackTrace() customizado > > Data: Wed, 22 May 2002 15:23:00 -0700 > > > > > > > > Beleza Pessoal! Funcionou! > > Obrigado a todos pelas dicas! Abaixo vai a forma que fiz. Lembrem-se > > que era dentro de uma errorPage. > > > > if (exception != null) { > > Exception e = (Exception) exception; > > e.printStackTrace(); > > > > Throwable obT = (Throwable) e; > > String stVt[] = ExceptionUtil.captureStackTrace(obT); > > > > for (int i = 0 ; i < stVt.length ; i++) { > > System.out.println(""+i+" >>>>>>>>>>> "+stVt[i]); > > } > > } > > > > Abraços > > > > Felipe Grandi Santos > > Analista de Sistemas > > Fone: +55 54 3025-1717 > > E-mail: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > > > > _____ > > > > <http://www.dzset.com.br> > > De quem entende de informação para quem entende de saúde. > > > > > > -----Mensagem original----- > > De: Rosfran Lins Borges [mailto:[EMAIL PROTECTED] > > Enviada em: quarta-feira, 22 de maio de 2002 11:03 > > Para: '[EMAIL PROTECTED]' > > Assunto: RES: [java-list] printStackTrace() customizado > > > > > > > > Você pode usar a classe StackTraceElement. Ela define vários métodos que > > com certeza vão resolver tudo o que você quer (obter a linha onde ocorreu a > > exceção, nome da classe, método, etc...). Quando você chama o método > > getStackTrace() sobre uma instância de uma exceção, ele retorna um array de > > StackTraceElement's. Aí é só fazer um loop e imprimir as informações de cada > > um dos itens da exceção. > > Por coincidência, a sua dúvida foi respondida pela "Question of the > > Week", no site java.sun.com. O endereço é: > > http://developer.java.sun.com/developer/qow/. Ele é explicativo e inclui um > > exemplo bem simples do uso dessa funcionalidade. > > > > > > Rosfran Lins Borges > > Analista de Sistemas - NDS > > [EMAIL PROTECTED] > > Fóton® Informática e Serviços > > Fone: (61) 328 5060 R.: 204 > > > > > > -----Mensagem original----- > > De: Felipe Santos [mailto:[EMAIL PROTECTED] > > Enviada em: terça-feira, 21 de maio de 2002 16:10 > > Para: [EMAIL PROTECTED] > > Assunto: RES: [java-list] HTMLEditorKit > > > > Pessoal, > > > > Estou tentando capturar o printStackTrace de uma Exception que estou > > tratando numa errorPage (JSP). O meu objetivo é pegar o nome da classe que > > está levantando a exceção e demonstrar na tela. No caso: > > > > dzset.com.objectserious.excecoes.ExLocalidadeInvalida > > at > > dzset.com.objectserious.cadastrosgerais.negocio.EnderecoHome.consiste > > Endereco(EnderecoHome.java:72) > > at > > dzset.com.objectserious.cadastrosgerais.negocio.UnidadeHome.consisteU > > nidade(UnidadeHome.java:69) > > at > > dzset.com.objectserious.cadastrosgerais.negocio.UnidadeHome.alterar(U > > nidadeHome.java:173) > > at > > dzset.com.objectserious.cadastrosgerais.controle.AlterarUnidade.execu > > tar(AlterarUnidade.java:199) > > at > > org.apache.jsp.JSPExecUnidade$jsp._jspService(JSPExecUnidade$jsp.java > > :298) > > at > > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > > at > > org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspSer > > vlet.java:202) > > . > > . > > . > > > > Eu quero pegar a linha "at > > dzset.com.objectserious.cadastrosgerais.negocio.EnderecoHome.consiste > > Endereco(EnderecoHome.java:72)" > > Tentei várias coisas: getStackTrace(), > > ExceptionUtil.printStackTrace. Mas só consigo pegar a partir do JSP. Ou > > seja, aquelas primeiras linhas que dizem exatamente em qual classe foi > > levantada a exceção eu não consigo pegar. Alguém sabe como fazer isto?? > > Senão, alguma outra forma de capturar o nome da classe. Alguém já deve ter > > feito isto! > > Agradeço desde já. > > > > > > Abraços > > > > Felipe Grandi Santos > > Analista de Sistemas > > Fone: +55 54 3025-1717 > > E-mail: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > > > > > > > > ------------------------------ LISTA SOUJAVA ---------------------------- > > http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP > > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > > regras da lista: http://www.soujava.org.br/regras.htm > > historico: http://www.mail-archive.com/java-list%40soujava.org.br > > para sair da lista: envie email para [EMAIL PROTECTED] > > ------------------------------------------------------------------------- > > > > > > > > > ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------