我正在尝试在html WebView中将信息(lattiude,longitority)传递到google map。问题是应用程序没有在NetBeans中启动。它返回说:
使用平台执行C:\Users\Carlos\Documents\NetBeansProjects\OpenPilot\Dist\Run1883323097\OpenPilot.jar\JK1.8.0_05\JRE/bin/Java应用程序中的异常启动方法java.lang.Reflect.InvocationTargetException在Sun.Reflect.NativeMethodAccessorInvoke0(本机方法)在Sun.Reflect.NativeMethodAccessorInvoke(nativeMethodAccessorInvoke(nativeMethodAccessorInvoke:62)在R.LauncherHelper$FXHelper.Main(LauncherHelper.java:767)原因:java.lang.RuntimeException:在com.sun.javafx.Application.LauncherImpl.LaunchApplication1(LauncherImpl.java:894)的应用程序启动方法中出现异常,在com.sun.javafx.Application.LauncherImpl.Access$000(LauncherImpl.java:56)的原因:com.sun.javafx.Application.LauncherImpl.Access$1。在java.lang.Thread.Run(
在javafx.fxml.fxmlloader.constructloadexception(fxmlloader.java:2617)在javafx.fxml.fxmlloader.loadimpl(fxmlloader.java:2595)在javafx.fxml.fxmlloader.load(fxmlloader.java:2425)在openpilot.openpilot.start(fxmlloader.java:29)在com.sun.javafx.application.launcherimpl$8。在com.sun.javafx.application.launcherimpl$7。在n:TypeError:“undefined”不是位于com.sun.webkit.dom.jsobject.fwkmakeException(jsobject.Java:128)位于com.sun.webkit.webpage.twkexecutescript(本机方法)位于com.sun.webkit.webpage.executescript(webpage.Java:1410)位于javafx.scene.web.webengine.executescript(webengine.Java:934)位于
代码如下:
public class FXMLDocumentController implements Initializable {
@FXML public WebView Map;
@Override
public void initialize(URL url, ResourceBundle rb) {
URL MapURL = getClass().getResource("map.html");
WebEngine WebEngine = Map.getEngine();
WebEngine.load(MapURL.toExternalForm());
String test = "40.3130432088809";
WebEngine.executeScript("getCoordinates('40.3130432088809')");
}
}
下面是带有映射的html:
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<style>
html, body, #map-canvas {
height: 100%;
margin: 0px;
padding: 0px
}
</style>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<script>
var latitude;
var longitude;
function getCoordinates(latitude){
this.latitude = latitude;
}
var map;
function initialize() {
var mapOptions = {
zoom: 8,
center: new google.maps.LatLng(latitude, -2.900390625)
};
map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
google.maps.event.addListener(map, 'click', function(event) {
placeMarker(event.latLng);
});
}
function placeMarker(location) {
var marker = new google.maps.Marker({
position: location,
map: map
});
google.maps.event.addListener(marker, 'rightclick', function() {
deleteMarker(marker);
});
}
function deleteMarker(marker) {
marker.setMap(null);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="map-canvas"></div>
</body>
</html>
您几乎可以肯定地尝试在页面加载之前执行javascript。您需要指定一个处理程序,以便在web引擎完成加载后执行脚本。
@Override
public void initialize(URL url, ResourceBundle rb) {
URL MapURL = getClass().getResource("map.html");
WebEngine WebEngine = Map.getEngine();
WebEngine.getLoadWorker().stateProperty().addListener((ov, oldState, newState) -> {
if (newState == State.SUCCEEDED) {
WebEngine.executeScript("getCoordinates('40.3130432088809')");
}
});
WebEngine.load(MapURL.toExternalForm());
}
问题内容: 因此,我试图从根本上建立一个用户选择ID的网页,然后该网页将ID信息发送给python,在python中,python使用ID来查询数据库,然后将结果返回至该网页进行显示。 我不太确定该怎么做。我知道如何使用ajax调用来调用python生成的数据,但是我不确定如何将初始id信息传达给django应用。是否可以说,查询../app/id(IE / app / 8)之类的网址,然后使用该
问题内容: 由于这是我的第一篇文章,请原谅任何不正确之处。我的问题,我想将JavaScript函数的值传递给initialize方法的Javafx } 和JavaScript部分是这样的 我要传递的值是方法调用JavaScript上的lengthInMeters有什么想法?提前thnx 问题答案: 我已经尝试过简化代码: 而且不起作用。 在您的情况下和在我的方法中,是 在* 网络加载 后 调用的,
问题内容: 因此,我试图从根本上建立一个用户选择ID的网页,然后该网页将ID信息发送给python,在python中,python使用该ID来查询数据库,然后将结果返回给该网页进行显示。 我不太确定该怎么做。我知道如何使用ajax调用来调用python生成的数据,但是我不确定如何将初始id信息传达给django应用。是否可以说,查询../app/id(IE / app / 8)之类的网址,然后使用
如何在Lambda函数中引用API网关GET查询字符串参数? 当我进行测试时,我可以使用 当我使用post进行测试时,我可以使用body参数作为带有 的事件,使用get请求,但我没有body。我如何使用查询字符串参数,然后在请求中引用它们。我使用什么事件或其他属性来获取查询参数,或者我需要进行什么设置或更改? 在测试时,我引用了event[“username”],对于作为查询字符串参数传递它的AP
如果需要与特定的应用编程接口/硬件组件交互,您将如何将信息从Flutter传递回Android/Native代码? 是否有任何事件通道可以以其他方式或类似于回调的方式发送信息? platform_channel文档指出,“方法调用也可以反向发送,平台充当Dart中实现的方法的客户端。quick_actions插件就是一个具体的例子。”在这种情况下,我看不出本机是如何接收到来自Flatter的消息的