У меня есть JavaFX
WebView
, который обновляется с помощью фоновых сообщений и выполняет скрипты для обновления страницы.JavaFX WebView/WebEngine
webEngine.getLoadWorker().stateProperty().addListener(
new ChangeListener<State>() {
public void changed(ObservableValue ov, State oldState, State newState) {
if (newState == State.SUCCEEDED) {
try {
webEngine.executeScript("foo1();");
} catch (Exception e) {
// JSException: TypeError: 'undefined' is not a function
}
}
}
});
Это нормально работает правильно, но когда я создаю второйWebView
с собственным WebEngine
и попытаться выполнить foo2()
на этой второй странице, примерно в то же время, как исполнение foo1
на первой странице, Я получаю это:
JSException: TypeError: 'undefined' is not a function
Я мог бы блок синхронизации, но мне кажется, это должно быть ненужным, так как webEngines, предполагают, чтобы быть независимыми, существуют другие Soluti Дополнения?
Вы действительно должны использовать более описательное название –