Acho que é isso que vc está querendo: ----------------- Start import java.io.PrintWriter; import java.io.StringWriter;
public String getStack(Throwable exception) { StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(sw); exception.printStackTrace(pw); return (sw.toString()); } ----------------- End []'s Rodrigo --- Kleber Rodrigo de Carvalho <[EMAIL PROTECTED]> escreveu: > 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] > ------------------------------------------------------------------------- > _______________________________________________________________________ Yahoo! Mail O melhor e-mail gratuito da internet: 6MB de espaço, antivírus, acesso POP3, filtro contra spam. http://br.mail.yahoo.com/ ------------------------------ 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] -------------------------------------------------------------------------