Ulfmann Geschrieben 15. Juni 2010 Teilen Geschrieben 15. Juni 2010 (bearbeitet) Hallo, ich habe kürzlich begonnen, mit dem Google Web Toolkit zu arbeiten und hoffe, dass sich hier welche besser mit der Materie auskennen. Ich benutze Eclipse 3.5.2, Java 1.6, das GWT 2.0.3 und das entsprechende Plugin für Eclipse. Folgende Situation: - Neues Web Application Project angelegt - Eigene Remote Procedure Call erstellt - Die ServiceImpl Klasse bindet externe Jars ein, aus denen ich Klassen instanziieren möchte (im Build-Path hinzugefügt und per Import-Anweisung eingebunden) Problem 1: Beim Ausführen der Applikation (bzw. beim Starten der App Engine mittels des Run-Buttons) bekomme ich nach ca. 20 Sekunden folgende Fehlermeldung auf der Konsole: INFO: Unable to access http://appengine.google.com/api/updatecheck?runtime=java&release=1.3.4×tamp=1273872371&api_versions=['1.0'] java.net.ConnectException: Connection timed out: connect at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(Unknown Source) at java.net.PlainSocketImpl.connectToAddress(Unknown Source) at java.net.PlainSocketImpl.connect(Unknown Source) at java.net.SocksSocketImpl.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at sun.net.NetworkClient.doConnect(Unknown Source) at sun.net.www.http.HttpClient.openServer(Unknown Source) at sun.net.www.http.HttpClient.openServer(Unknown Source) at sun.net.www.http.HttpClient.<init>(Unknown Source) at sun.net.www.http.HttpClient.New(Unknown Source) at sun.net.www.http.HttpClient.New(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) at java.net.URL.openStream(Unknown Source) at com.google.appengine.tools.info.RemoteVersionFactory.getVersion(RemoteVersionFactory.java:76) at com.google.appengine.tools.info.UpdateCheck.checkForUpdates(UpdateCheck.java:98) at com.google.appengine.tools.info.UpdateCheck.doNagScreen(UpdateCheck.java:168) at com.google.appengine.tools.info.UpdateCheck.maybePrintNagScreen(UpdateCheck.java:136) at com.google.appengine.tools.development.gwt.AppEngineLauncher.maybePerformUpdateCheck(AppEngineLauncher.java:104) at com.google.appengine.tools.development.gwt.AppEngineLauncher.start(AppEngineLauncher.java:76) at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:421) at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1035) at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:783) at com.google.gwt.dev.DevMode.main(DevMode.java:275) 15.06.2010 13:43:38 com.google.apphosting.utils.jetty.JettyLogger info INFO: Logging to JettyLogger(null) via com.google.apphosting.utils.jetty.JettyLogger 15.06.2010 13:43:38 com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml INFO: Successfully processed C:\...\war\WEB-INF/appengine-web.xml 15.06.2010 13:43:38 com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml INFO: Successfully processed C:\...\WEB-INF/web.xml 15.06.2010 13:43:39 com.google.appengine.tools.development.DevAppServerImpl start INFO: The server is running at http://localhost:8888/ Anschließend gibt er mir die Location aus, die ich im Browser aufrufen kann. Die Applikation läuft trotzdem - bis zu dem Punkt, an dem o. g. Klassen instanziiert werden. Problem 2: An dieser Stelle stellt er fest, dass er die Klasse gar nicht findet. com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.lang.String hello.client.PRISService.isConnected()' threw an unexpected exception: java.lang.NoClassDefFoundError: de/pps/persistence/DSManager Es scheint mir, als wüsste der Server zur Laufzeit nichts von den Klassen, die ich benutzen möchte. Weiß jemand einen Rat, an welcher Stelle ich den Fehler suchen soll? Ich wäre dankbar für jeden Tipp. Gruß Bearbeitet 15. Juni 2010 von Ulfmann Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Ulfmann Geschrieben 15. Juni 2010 Autor Teilen Geschrieben 15. Juni 2010 Das Problem lässt sich weiter konkretisieren. Gemäß der Google Doku läuft jede Applikation in einer Sandbox, die gewissen Restriktionen unterliegt. An app can use any JVM bytecode or library feature, as long as it does not exceed the sandbox restrictions. For instance, bytecode that attempts to open a socket or write to a file will throw a runtime exception. Quelle: What Is Google App Engine? - Google App Engine - Google Code Genau das will ich jetzt aber machen. Die Vorstellung, dass GWT keinen Zugriff auf andere Bibliotheken oder Datenbanken zulässt halte ich nicht so ganz für realistisch. Weiß da jemand einen Ausweg? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.