2010-08-20 4 views
0

Je migre un petit outil que j'ai écrit pour notre application qui travaillait sur WAS et WLS pour JBoss AS 5.1. Fondamentalement, les outils m'aident à résoudre les problèmes de chargement de classes: ils détectent la hiérarchie de la classe de chargement d'une classe spécifiée, lors de l'exécution, et découvrent toutes les classes et les jars chargés par chaque chargeur de classe. C'est un outil assez simple - il utilise simplement la méthode Classloader.getPArent() pour obtenir la hiérarchie du classloader.Implémentation JBoss AS Classloader?

L'astuce qui a fait travailler pour WLS et WAS a été que leurs mises en œuvre classloader avaient soit une méthode « getClassPath() » qui a renvoyé une liste complète de toutes les entrées de classpath, ou ils étaient des instances de la classe URLClassLoader et Je pourrais utiliser sa méthode 'getURLs()' pour obtenir la même information. Maintenant, il semble que les classloaders internes de JBoss ne suivent pas le même modèle - donc je me demandais s'il y avait un autre moyen d'obtenir la même information d'une façon ou d'une autre? Fondamentalement, je veux obtenir une image complète de la hiérarchie de classe et quel classloader charge quelles classes/pots à l'exécution. Ce doit être une information d'exécution - parce que je veux être capable de trouver cette information pour n'importe quelle instance d'une classe, que ce soit une servlet, un EJB, une classe util ou JSP - afin que je puisse voir où dans la hiérarchie ces objets sont, quelles sont leurs ressources chargées par les frères et sœurs et quels sont leurs classloaders parents.

Merci!

Marina

Répondre

1

En fait, ce dued à VFS utilisés par JBoss, j'ai écrit un post concernant cette question et la solution correspondante.

Questions connexes