# Scriptengine hat kein Google und kein Window



## CorperateRaider (7. Okt 2014)

Hallo, ich würde gerne aus Koordinaten die Meereshöhe und später auch mal die Farbe bei GoogleMaps auslesen, dafür die Scriptengine nutzen, da ich die exakten Serverzugriffe nicht kenne...

Mein Problem ist im Moment die Meereshöhe, als .HTML funktioniert der Code, in der Scriptengine jedoch nicht... aktueller Fehler ist dieses Script: maps.googleapis.com/maps/api/js?sensor=false, indem window und google wohl benötigt werden, doch die Scriptengine hat kein window und google.maps kennt sie wohl auch nicht...


```
var elevator, ret;
var deutschland = new google.maps.LatLng(50.951506, 9.063721);

        function initialize(){
            elevator = new google.maps.ElevationService();

            var lat=52.266;
            var lng=45.485554;
            var locations = [];

            locations.push(new google.maps.LatLng(lat, lng));
            var positionalRequest = {'locations': locations};

            elevator.getElevationForLocations(positionalRequest, function(results, status) {
                if (status == google.maps.ElevationStatus.OK) {
                    if (results[0]){
                       ret=(results[0]);//wird später dann mit engine.get("ret") abgefragt
                    } else {
                        //alert("Nichts gefunden");
                    }
              } else {
                    //alert("Fehler: " + status);
              }
            });
		}
```

es wäre toll, wenn jemand eine Lösung wüsste


----------



## Joose (7. Okt 2014)

Leider hast du dich hier bei uns im Forum geirrt.
Es handelt sich hier um ein Java Forum, kein JavaScript!
Ich verschiebe diesen Beitrag mal in das richtige Subforum, möglicherweise gibt es ja doch jemand der dir hier helfen kann


----------



## CorperateRaider (7. Okt 2014)

Das Problem ist eine Mischung aus beidem.
Hier das Javazeug, wenn es jemand braucht 

```
ScriptEngineManager manager = new ScriptEngineManager ();
ScriptEngine engine = manager.getEngineByName("js");
	try {
		//Lade GoogleMapsAPI
		engine.eval(URLtxt("http://maps.googleapis.com/maps/api/js?sensor=false"));//URLtxt lädt die Datei herunter und gibt ihren Inhalt als String zurück
			
			

		engine.put("lat", lat);//Variablen werden Werte zugewiesen
		engine.put("lng", lng);  

	        engine.eval(
	        	  "var elevator = new google.maps.ElevationService();"
	        	+ "var locations = [];var ret = 0;"
	        	+ "locations.push(new google.maps.LatLng(lat, lng));"
	        	+ "var positionalRequest = {'locations': locations};"
	        	+ "elevator.getElevationForLocations(positionalRequest, function(results, status) {"
	        	+ "if (status == google.maps.ElevationStatus.OK) {"
	        	+ "if (results[0]){"
	        	+ "var ret=results[0];"
	        	+ "}"
	        	+ "}"
	        	+ "}"
	        );

	        return (double) engine.get("ret");//bekomme Werte von Variablen
	        
	    }catch (ScriptException e){e.printStackTrace();
	    }catch (IOException e){e.printStackTrace();}
	return 0;
```


----------

