Olá Carlos,

        O problema é que preciso capturar isto de dentro de uma errorPage. Como as exceções são levantadas de dentro das classes não posso utilizar este forma que me passou. No printStackTrace eu tenho a informação de qual classe levantou a exceção, só que não estou conseguindo capturar justamente esta informação! Abaixo está a forma que estou testando:

   if (exception != null) {
          Exception e = (Exception) exception;
          e.printStackTrace();

        Throwable obT = (Throwable) e.fillInStackTrace();
        StackTraceElement obSTE[] = obT.getStackTrace();

        for (int i = 0 ; i < obSTE.length ; i++) {
            System.out.println(""+i+" >>>>>>>>>>> "+obSTE[i].getClassName());
        }  
                .
                .
                .


       
No printStackTrace ele mostra:

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)
        .
        .
        .

        Quero recuperar o "at dzset.com.objectserious.cadastrosgerais.negocio.EnderecoHome.consiste
Endereco(EnderecoHome.java:72)"
, mas o método só retorna algo a partir de "at org.apache.jsp.JSPExecUnidade$jsp._jspService(JSPExecUnidade$jsp.java :298)".
        Se você ou alguém da lista souber o que está dando errado, por favor me ajudem!


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: [Carlos H.] [mailto:[EMAIL PROTECTED]]
Enviada em: terça-feira, 21 de maio de 2002 22:26
Para: [EMAIL PROTECTED]
Assunto: Re: [java-list] HTMLEditorKit


Olá Felipe,

Veja se é mais ou menos isto que você está querendo:

public class Classe01 {
    static Classe01 c;
  
    public static void main(String args[]) {
        try {
            c = new Classe01();
            throw new Exception("Erro!");
        } catch (Exception e) {
            System.out.println("Classe Onde ocorreu a Exceção: " +
c.getClass().getName());
        }
    }
}

Espero ter ajudado de qualquer forma.

Carlos

Felipe Santos wrote:

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

--
/**
 * [Carlos H.] - [EMAIL PROTECTED]
 * Núcleo de Informática UNERJ - Centro Universitário de Jaraguá do Sul
 *
 * Não use drogas, use Linux!
 */




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

Responder a