2009-02-04 3 views

Répondre

1

L'application serveur devrait déjà utiliser des Jarres en WEB-INF/lib, ainsi que les chemins de bibliothèque système et de serveur d'applications - l'approche standard est que les ClassLoader pour WEB-INF/lib délégués chargement de classe au serveur d'applications lib, qui délègue le chargement de classe sur le serveur lib, et seulement si le classloader parent ne trouve pas la classe, il essaie de charger ses propres classes. En d'autres termes, si vous placez la même classe dans WEB-INF/lib et la bibliothèque lib du serveur d'application, ce dernier JAR sera toujours utilisé. Cela signifie qu'il est possible de créer des conflits en ayant des classes avec les mêmes noms mais des versions différentes disponibles à la fois dans WEB-INF/lib et la bibliothèque du serveur d'applications - êtes-vous sûr que ce n'est pas ce qui cause vos problèmes? Pouvez-vous résoudre le conflit? Certains serveurs d'application (pas sûr de JBoss, mais je sais que WebSphere le permet) vous permet de configurer le chargeur de classe de sorte que le chargeur enfant soit d'abord vérifié (enfant-premier par rapport à parent-premier), mais ce type de configuration peut autres issues.

+0

J'ai finalement résolu le problème en rétrogradant mes bibliothèques spring-ws à la version 1.0.4 qui fonctionne avec le serveur JBOSS 4.0.2. J'ai fait beaucoup de recherches sur JBOSS sur le chargeur de fichiers: http://jboss.org/community/docs/DOC-9288, ce qui m'a aidé à comprendre et à résoudre le problème. – jon077

Questions connexes