Bonjour,

J'ai actuellement une application constituée d'une servlet et d'un EJB de type MDB qui écoute une queue MQ.
Mon problème: une erreur de type "ClassNotFoundError" lors de l'exécution de l'EJB.

Globalement, ce que fais l'application:
- la servlet est là pour loader des properties et les mettre à disponibilité dans le JNDI.
- l'EJB MDB écoute une queue, et effectue le traitement suivant lorsqu'un message arrive dans cette queue : des trucs, un appel à un web service externe, d'autres truc.

Erreur obtenu:
J'obtiens l'erreur ClassNotFoundError sur la classe suivante lors de l'appel au web service:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl
Cette classe est contenu dans le jar 'jaxb-impl-2.1.12.jar', ce jar est livré avec mon application.

Arborescence de l'application déployée:
Lors du déploiement de cette application sur mon serveur JBoss 4.2.3, j'obtiens donc dans le répertoire d'installation la structure suivante:
- app
- config
- log
- data
- etc
- META-INF

Dans le répertoire "app", j'ai mon EAR. Cet EAR comprends toute une liste de jars (dont celui défini plus haut pour la classe soit disant manquante), un WAR pour ma servlet, et un JAR pour mon EJB.


Je ne comprends pas en quoi la classe n'est pas trouvée ? Une erreur de classpath ? J'ai eu beau tenter d'ajouter le jar dans le MANIFEST du répertoire META-INF de l'EJB, rien n'y fait.

Est-ce que quelqun aurait une idée de la cause du problème ?

Mon application fonctionnait à un moment, mais j'avoue avoir fait tant de manipulation que je ne sais plus si son non fonctionnement est du à une mauvaise manipulation ou autre chose.
J'ai noté toute fois que mon application ne fonctionne plus depuis que l'administration du serveur a changé la version de java pour la suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Java(TM) 2 Runtime Environment, Standard Edition (build pxi32devifx-20080616a (SR6b + IZ23458))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux x86-32 j9vmxi3223-20071005 (JIT enabled)
J9VM - 20071004_14218_lHdSMR
JIT  - 20070820_1846ifx1_r8
GC   - 200708_10)
JCL  - 20080616
Si quelqun a une idée du pourquoi du comment, car j'avoue être perdu dans mes tentatives.

En vous remerciant d'avance pour votre aide.

ps: J'ai un peu l'impression que ma librairie n'est pas prise en compte, mais plus celle de la JVM et que de ce fait, la classe en question utilisée n'est peut-être pas présente dans la version de la librairie de cette nouvelle version de Java. Mais ça me semble peu probable.