次のJavaメソッドを呼び出すjavascriptオブジェクトからメソッドを呼び出そうとしています:
public void loadPicture(final String absolutePath) {
System.out.println("loadPicture " + absolutePath);
Image dbimage;
dbimage = new Image(absolutePath, 100.0d, 100.0d, false, false);
final ImageView dbImageView = new ImageView();
dbImageView.setImage(dbimage);
Platform.runLater(new Runnable() {
@Override
public void run() {
try {
System.out.println("hbox children : "+hbox.getChildren().size());
hbox.getChildren().add(dbImageView);
System.out.println("hbox children : "+hbox.getChildren().size());
//test
//logger.debug(" aggiunto "+absolutePath);
DropPictures.getPicturesNames().add(absolutePath);
} catch (Exception e) {
System.out.println("eccezione :" + e.getLocalizedMessage());
}
}
});
}
JavaScript では、メソッド呼び出しは次のとおりです。
var a = document.getElementById(myDivId);
a.loadPicture();
実行を追跡しましたが、上記のメソッドは例外をスローしませんが、Java コンソールに出力が表示されるため実行されますが、アプレットには画像が表示されません。Platform.runLater を使用して javafx スレッドで GUI を更新しましたが、更新はまだ実行されていません。