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]
-------------------------------------------------------------------------