Bonjour à tous,

J'ai un petit souci avec mon projet GWT.
Le problème est le suivant lorsque je lance mon projet gwt tous va bien mais lorsque j'arrive coté service et qu j'essaie d'initialiser ma connexion via hibernate j'ai l'erreur suivante:
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
 
 
Initial SessionFactory creation failed.java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
Starting Jetty on port 8888
   [WARN] Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.lang.String com.clearstream.clocksyncmon.client.GreetingService.greetServer(java.lang.String) throws java.lang.IllegalArgumentException' threw an unexpected exception: java.lang.ExceptionInInitializerError
	at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:385)
	at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:588)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
	at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.Server.handle(Server.java:324)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:843)
	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647)
	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
Caused by: java.lang.ExceptionInInitializerError
	at com.clearstream.clocksyncmon.server.service.HibernateUtil.<clinit>(HibernateUtil.java:27)
	at com.clearstream.clocksyncmon.server.service.AbstractCoreAction.beginRTSTxqOwnerTransaction(AbstractCoreAction.java:8)
	at com.clearstream.clocksyncmon.server.GreetingServiceImpl.greetServer(GreetingServiceImpl.java:26)
	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:597)
	at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
	... 22 more
Caused by: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
	at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:151)
	at com.clearstream.clocksyncmon.server.service.HibernateUtil.<clinit>(HibernateUtil.java:22)
	... 29 more
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload$WebAppClassLoaderExtension.findClass(JettyLauncher.java:372)
	at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:366)
	at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:337)
	... 31 more
[ERROR] 500 - POST /clocksyncmon/greet (127.0.0.1) 57 bytes
   Request headers
      Host: 127.0.0.1:8888
      User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:17.0) Gecko/20100101 Firefox/17.0
      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      Accept-Language: en-US,en;q=0.5
      Accept-Encoding: gzip, deflate
      Connection: keep-alive
      Referer: http://127.0.0.1:8888/ClockSyncMon.html?gwt.codesvr=127.0.0.1:9997
      X-GWT-Permutation: HostedMode
      X-GWT-Module-Base: http://127.0.0.1:8888/clocksyncmon/
      Content-Type: text/x-gwt-rpc; charset=utf-8
      Content-Length: 190
      Pragma: no-cache
      Cache-Control: no-cache
   Response headers
      Content-Type: text/plain
Le messsage d'erreur m'indique que la librairie suivante est manquante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
mais elle est bien là.
De plus lorsque j'execute un test JUNIT côté server, je n'ai pas le problème ma connexion hibernate s'initialise correctement.

Voici le code posant problème :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
static {
		try {
			// Crée la SessionFactory
			//sessionFactoryRTSTxqOwner = getSessionFactoryRTSTxqOwner();
			sessionFactoryRTSTxqOwner = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
			//HibernateBeanManager.getInstance().setSessionFactory(sessionFactoryRTSTxqOwner);
		} catch ( Throwable ex ) {
            // Make sure you log the exception, as it might be swallowed
            System.err.println("Initial SessionFactory creation failed." + ex);
            throw new ExceptionInInitializerError(ex);
		} 
	}
Merci à tous