# Probleme mit GWT & MySQL



## eolith421 (26. Okt 2009)

Hallo liebes Forum!
Ich arbeite derzeit an einer Webanwendung mit GWT und Java. Nachdem das seitens meine UNI Ausbildung erfolgt habe ich leider keine Erfahrungen mit der Programmierung von Webanwendungen in Java. Deswegen habe ich schon länger ein solches Forum gesucht. Trotzdem habe ich schon einiges geschafft nur heute bin ich leider auf ein Problem gestoßen welches ich bisher nicht lösen konnte.

Heute wollte ich damit beginnen Daten aus der MySQL DB auszulesen und in die DB heineinschreiben. Und hier stoße ich auf ein großes Problem. Alle DB Methoden funktionieren wunderbar wenn ich sie mithilfe einer main Methode als Anwendung kompiliere und sie anschließend teste, mit GWT bekomme ich immer folgende Fehlermeldung(en):


```
SEVERE: [1256563376457000] javax.servlet.ServletContext log: Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.lang.String at.ac.uibk.dbis.dmis.ihe_xds.client.StammdatenService.getAllStammdaten()' threw an unexpected exception: java.lang.ExceptionInInitializerError
	at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:360)
	at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:546)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:166)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServiceServlet.java:86)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
	at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
	at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:121)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
	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:712)
	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
	at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:54)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
	at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:342)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
	at org.mortbay.jetty.Server.handle(Server.java:313)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:844)
	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
Caused by: java.lang.ExceptionInInitializerError
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
	at java.sql.DriverManager.getConnection(DriverManager.java:582)
	at java.sql.DriverManager.getConnection(DriverManager.java:207)
	at at.ac.uibk.dbis.dmis.ihe_xds.server.Database.connect(Database.java:32)
	at at.ac.uibk.dbis.dmis.ihe_xds.server.Database.executeSelect(Database.java:53)
	at at.ac.uibk.dbis.dmis.ihe_xds.server.StammdatenServer.getAllStammdaten(StammdatenServer.java:19)
	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.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:100)
	at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:527)
	... 27 more
Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup)
	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
	at java.security.AccessController.checkPermission(AccessController.java:546)
	at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
	at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkPermission(DevAppServerFactory.java:151)
	at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkAccess(DevAppServerFactory.java:176)
	at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:288)
	at java.lang.Thread.init(Thread.java:332)
	at java.lang.Thread.<init>(Thread.java:377)
	at java.util.TimerThread.<init>(Timer.java:456)
	at java.util.Timer.<init>(Timer.java:71)
	at java.util.Timer.<init>(Timer.java:122)
	at com.mysql.jdbc.Connection.<clinit>(Connection.java:1089)
	... 39 more
```

Ich gebe zu, dass ich die Fehlermeldung nicht ganz verstehe. Ich habe die mysql jar Datei in den lib Ordner von WEB-INF kopiert und trotzdem geht es nicht.

Ich wäre sehr froh wenn mir jemand erklären könnte wie ich in Eclipse mit dm GWT Modul externe Jar Dateien einbinden kann. Ich denke einmal es liegt wohl daran.

Liebe Grüße,
Florian


----------



## eolith421 (30. Okt 2009)

Habe das Problem mittlerweile lösen können, lag and der GWT AppEngine, die muss im Projekt deaktiviert sein damit es mit der Verbindung sur SQL Datenbank passt.

Florian


----------



## Spinner0185 (3. Nov 2009)

super sache hatte das selbe problem 
danke dafür.
doch worin besteht jetzt der nachteil dadurch das die app engine deaktiviert wurde?


----------



## eolith421 (3. Nov 2009)

Die app engine bietet offenbar einige Funktionen und libraries für Basisdienste. Wenn man die nicht hat, muss man halt selber schauen wie man zu diesen Basisdiensten kommt, aber ich kann nicht sagen welche es sind.

Florian


----------

