私が読んだことから、Javaプログラム内でJavaScriptを実行することは可能であるように見えますが、その方法を完全に把握するのにまだ苦労しています。Java プログラムで表示される googlemap API を実行するのに十分なことはできますか?
私が見てきたコードの2つの例は、Javaでこれです:
import javax.script.*;
public class script {
public static void main(String[] args) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("JavaScript");
// JavaScript code in a String
String script = "function hello(name) { print('Hello, ' + name); }";
// evaluate script
engine.eval(script);
// javax.script.Invocable is an optional interface.
// Check whether your script engine implements or not!
// Note that the JavaScript engine implements Invocable interface.
Invocable inv = (Invocable) engine;
// invoke the global function named "hello"
inv.invokeFunction("hello", "Scripting!!" );
}
}
これは、これを生成するためにjavascriptのgoogle docサイトで見つかった例として:
var center = new google.maps.LatLng(37.4419, -122.1419);
var options = {
'zoom': 13,
'center': center,
'mapTypeId': google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map"), options);
var markers = [];
for (var i = 0; i < 100; i++) {
var latLng = new google.maps.LatLng(data.photos[i].latitude,
data.photos[i].longitude);
var marker = new google.maps.Marker({'position': latLng});
markers.push(marker);
}
var markerCluster = new MarkerClusterer(map, markers);
これら 2 つのコード サンプルを統合して、マップが「hello world」ではなく JPanel に表示されるようにする方法を理解するのを手伝ってくれる人がいれば、残りの部分を理解できると思います。
更新:使用条件を読んだ後、条件に違反していることがわかりました。マップを組織の公開サイトに移動すると、そのスクリプトの結果を Java プログラム JPanel にロードできるはずです。これにより、マップへのパブリック アクセスが許可され、違反することはありません。私は正しいですか?これは可能ですか?私はJavaScriptの経験がありません。