Bir uygulama geliştirmek için JavaFX WebEngine içindeki JavaFX ve Javascript motorunu kullanıyorum. Hata ayıklama amacıyla javascript'ten geri bildirim almak istiyorum. WebEngine içindeki konsol çıkışına ne olur? Erişebildiğim herhangi bir yol var mı, yoksa java'da System.out'a mı yönlendiriliyorsunuz?JavaFX 8 WebEngine: javascript'ten javada System.out'a console.log() nasıl alınır?
import netscape.javascript.JSObject;
public class JavaBridge
{
public void log(String text)
{
System.out.println(text);
}
}
[...]
webEngine.getLoadWorker().stateProperty().addListener((observable, oldValue, newValue) ->
{
JSObject window = (JSObject) webEngine.executeScript("window");
JavaBridge bridge = new JavaBridge();
window.setMember("java", bridge);
webEngine.executeScript("console.log = function(message)\n" +
"{\n" +
" java.log(message);\n" +
"};");
});
, teşekkür için
console.log
gibi fonksiyonların yeniden tanımlanması ile js köprü enjekte etmek zorunda değilsiniz! –Burada "pencere" nedir? – NaveenBharadwaj
@Florian yardım edebilir misiniz? JSObject – NaveenBharadwaj