Bonjour bonjour

Voilà mon problème. Je travaille sur une application J2EE donc à la sortie j'ai un .ear. Jusqu'à présent, je ne packageais aucune de mes librairies utilisées, je les mettais directement dans Jboss. (Par exemple si mon app utilisait commons-logging.jar, je le mettais dans server/default/lib, mais pas dans le .ear).
Comme j'ai des problèmes, l'une des solutions que j'ai trouvé pour y voir plus clair est de cleaner un peu tout çà et de packager toutes mes librairies dans mon .ear.

J'ai donc supprimé toutes les libs de mon jboss (celles dans server/default/lib), puis copié/collé la liste des libs présentes dans un JBoss 3.2.3 fraichement explosé dans server/default/lib.

J'ai donc maintenant quelques problèmes.
En redéployant plusieurs fois, j'ai rajouté les librairies dont JBoss semble avoir absolument besoin: par exemple j'ai rajouté jaxb-api.jar et hibernate2.jar.
Première question: pourquoi je dois les rajouter dans JBoss sachant qu'elles sont déjà packagées dans mon .ear (à la racine de mon .ear)???

Seconde question: je me chope cette exception lors du déploiement (voir ci-après). Visiblement, il manque une librairie. Maisj 'ai vérifié sur docjar.com, net.sf.hibernate.collection.List se trouve bien dans hibernate2.jar : j'ai explosé celui dans mon JBoss et cette classe est effectivement présente. J'ai explosé celui dans mon .ear et la classe est également présente.
Je me retrouve donc avec une NoClassDefFoundError alors que j'ai bien le .jar présents (la preuve, il passe bien par net.sf.hibernate.mapping.List.getCollectionType).
J'aimerais comprendre pourquoi. Voici le log.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
2007-11-28 10:05:34,199 WARN  [org.jboss.system.ServiceController] Problem starting service jboss.jca:service=HibernateFactory,                             name=HibernateFactory
java.lang.NoClassDefFoundError: net/sf/hibernate/collection/List
	at net.sf.hibernate.type.TypeFactory.list(TypeFactory.java:186)
	at net.sf.hibernate.mapping.List.getCollectionType(List.java:19)
	at net.sf.hibernate.mapping.Collection.getType(Collection.java:275)
	at net.sf.hibernate.cfg.Binder.bindProperty(Binder.java:422)
	at net.sf.hibernate.cfg.Binder.createProperty(Binder.java:1041)
	at net.sf.hibernate.cfg.Binder.propertiesFromXML(Binder.java:1022)
	at net.sf.hibernate.cfg.Binder.bindRootClass(Binder.java:344)
	at net.sf.hibernate.cfg.Binder.bindRoot(Binder.java:1204)
	at net.sf.hibernate.cfg.Configuration.add(Configuration.java:247)
	at net.sf.hibernate.cfg.Configuration.addInputStream(Configuration.java:281)
	at net.sf.hibernate.cfg.Configuration.addResource(Configuration.java:304)
	at net.sf.hibernate.jmx.HibernateService.buildSessionFactory(HibernateService.java:174)
	at net.sf.hibernate.jmx.HibernateService.start(HibernateService.java:145)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
	at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:976)
	at $Proxy14.start(Unknown Source)
	at org.jboss.system.ServiceController.start(ServiceController.java:394)
	at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
	at $Proxy4.start(Unknown Source)
	at org.jboss.deployment.SARDeployer.start(SARDeployer.java:226)
	at org.jboss.deployment.MainDeployer.start(MainDeployer.java:832)
	at org.jboss.deployment.MainDeployer.start(MainDeployer.java:824)
	at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:642)
	at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:605)
	at sun.reflect.GeneratedMethodAccessor24.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
	at $Proxy6.deploy(Unknown Source)
	at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:302)
	at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:476)
	at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:201)
	at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:274)
	at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
	at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
	at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:976)
	at $Proxy0.start(Unknown Source)
	at org.jboss.system.ServiceController.start(ServiceController.java:394)
	at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
	at $Proxy4.start(Unknown Source)
	at org.jboss.deployment.SARDeployer.start(SARDeployer.java:226)
	at org.jboss.deployment.MainDeployer.start(MainDeployer.java:832)
	at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:642)
	at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:605)
	at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:589)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
	at $Proxy5.deploy(Unknown Source)
	at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:384)
	at org.jboss.system.server.ServerImpl.start(ServerImpl.java:291)
	at org.jboss.Main.boot(Main.java:150)
	at org.jboss.Main$1.run(Main.java:395)
	at java.lang.Thread.run(Thread.java:534)
Merci d'avance pour votre aide!