Descobrir nome de metodo que chama outro  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
marcelo.bellissimo
Virtual Machine Man

Membro desde: 17/10/2006 14:17:21
Mensagens: 617
Offline

Pessoal,

Seguinte... eu andei estudando sobre reflection, e dá pra fazer um monte de coisa legal, descobrir métodos, parametros, etc... não sei se é o caso de usar reflection, mas o caso é o seguinte:

Ou seja, chamando o MetodoA, esse chama o MetodoB... dentro do MetodoB, quero descobrir quem foi que chamou ele, nesse caso seria "MetodoA"... há como fazer isso ??
abelgomes
Virtual Machine Man
[Avatar]

Membro desde: 12/06/2008 17:08:23
Mensagens: 706
Localização: Manaus-AM
Offline

essa é boa....qual a aplicação disso exatamente? ou é somente curiosidade?

...the only easy day was yesterday...
[Email] [MSN]
qmx
JavaGuru
[Avatar]
Membro desde: 14/02/2007 10:49:14
Mensagens: 212
Localização: Sampa
Offline

se é util ou não eu não sei, mas acredito que isso só com interceptors, instrumentação de código e inspeção da stack com um agente de vm


[WWW]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

http://www.guj.com.br/posts/list/111487.java#601096
[WWW]
qmx
JavaGuru
[Avatar]
Membro desde: 14/02/2007 10:49:14
Mensagens: 212
Localização: Sampa
Offline

eu tinha pensado no e.printStackTrace(), mas ia ter que pesquisar muito pra chegar nisso thingol.... mandou bem!


[WWW]
Balena
JavaBaby
[Avatar]

Membro desde: 01/09/2008 09:27:05
Mensagens: 94
Localização: Guarapuava - Pr
Offline

Eu já tava começando a programar aqui pra ver se achava um jeito...
muito boa a idéia...
muito interessante mesmo


<script type="text/javascript" src="http://www.publicons.de/js/info1.js"></script>

Você deve fazer as perguntas certas, para obter as respostas certas.
[MSN]
marcelo.bellissimo
Virtual Machine Man

Membro desde: 17/10/2006 14:17:21
Mensagens: 617
Offline



Cara, perfeito... nunca ia chegar nessa solução... a única coisa que fiz foi alterar a ultima linha para:


Funcionou perfeitamente.

Muito obrigado !!
bigjoe
JavaChild
[Avatar]

Membro desde: 20/10/2006 14:30:40
Mensagens: 103
Localização: Rio de Janeiro
Offline

thingol wrote:http://www.guj.com.br/posts/list/111487.java#601096


excelente, salvou meu dia! :)

This message was edited 1 time. Last update was at 03/09/2009 14:21:38

felipehand
JavaChild
[Avatar]

Membro desde: 01/09/2009 14:17:53
Mensagens: 126
Offline

Não seria reflection?

SCJP - Estudando *.*
[MSN]
marcelo.bellissimo
Virtual Machine Man

Membro desde: 17/10/2006 14:17:21
Mensagens: 617
Offline

Reflection só funciona quando você já sabe qual a classe que você quer inspecionar. No meu caso, a chamada poderia vir de diferentes classes, e diferentes métodos. E era justamente isso que eu queria saber, quem foi que chamou meu método.

Reflection serve pra verificar quais os métodos e atributos de uma determinada classe, mas no meu caso era quase que óbvio que eu deveria inspecionar a pilha de chamadas de método na ordem que elas aconteceram, ou seja, pelo stackTrace, que foi justamente o que o thingol me mostrou naquele outro post.
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team