Zum Inhalt springen

Empfohlene Beiträge

Geschrieben (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&timestamp=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 von Ulfmann
Geschrieben

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?

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...