Example usage for javafx.scene.web WebEngine getLoadWorker

List of usage examples for javafx.scene.web WebEngine getLoadWorker

Introduction

In this page you can find the example usage for javafx.scene.web WebEngine getLoadWorker.

Prototype

public final Worker<Void> getLoadWorker() 

Source Link

Document

Returns a javafx.concurrent.Worker object that can be used to track loading progress.

Usage

From source file:Main.java

@Override
public void start(Stage primaryStage) {
    WebEngine webEngine = new WebEngine();
    webEngine.getLoadWorker().stateProperty().addListener((obs, oldValue, newValue) -> {
        if (newValue == State.SUCCEEDED) {
            System.out.println("finished loading");
        }/*  w w  w . j  a  v  a2s. co m*/
    }); // addListener()

    // begin loading...
    webEngine.load("http://www.java2s.com");

    Group root = new Group();
    Scene scene = new Scene(root, 300, 250);

    primaryStage.setScene(scene);
    primaryStage.show();
}

From source file:Main.java

@Override
public void start(Stage primaryStage) {
    WebEngine webEngine = new WebEngine();
    webEngine.getLoadWorker().stateProperty().addListener((obs, oldValue, newValue) -> {
        System.out.println(newValue);
        if (newValue == State.SUCCEEDED) {
            System.out.println("finished loading");
            String html = (String) webEngine.executeScript("document.documentElement.outerHTML");
            System.out.println(html);

        }//from ww  w  . j a  v a2 s . com
    });

    webEngine.load("http://www.java2s.com");

    Group root = new Group();
    Scene scene = new Scene(root, 300, 250);

    primaryStage.setScene(scene);
    primaryStage.show();
}

From source file:Main.java

@Override
public void start(Stage primaryStage) {
    WebEngine webEngine = new WebEngine();
    webEngine.getLoadWorker().stateProperty().addListener((obs, oldValue, newValue) -> {
        if (newValue == Worker.State.SUCCEEDED) {

            JSObject jsobj = (JSObject) webEngine.executeScript("window");
            jsobj.setMember("ABCD", new HelloWorld());
        }//from   ww  w  .j  a  va  2 s . c o  m
    });

    webEngine.load("http://www.java2s.com");

    Group root = new Group();
    Scene scene = new Scene(root, 300, 250);

    primaryStage.setScene(scene);
    primaryStage.show();
}

From source file:Main.java

@Override
public void start(Stage primaryStage) {
    WebEngine webEngine = new WebEngine();
    webEngine.getLoadWorker().stateProperty().addListener((obs, oldValue, newValue) -> {
        System.out.println(newValue);
        if (newValue == State.SUCCEEDED) {
            System.out.println("finished loading");
            try {
                TransformerFactory transformerFactory = TransformerFactory.newInstance();
                Transformer transformer = transformerFactory.newTransformer();
                StringWriter stringWriter = new StringWriter();
                transformer.transform(new DOMSource(webEngine.getDocument()), new StreamResult(stringWriter));
                String xml = stringWriter.getBuffer().toString();
                System.out.println(xml);
            } catch (Exception e) {
                e.printStackTrace();//from   ww w.  j ava  2 s .  c  o m
            }

        }
    }); // addListener()

    // begin loading...
    webEngine.load("http://www.java2s.com");

    Group root = new Group();
    Scene scene = new Scene(root, 300, 250);

    primaryStage.setScene(scene);
    primaryStage.show();
}

From source file:Main.java

License:asdf

@Override
public void start(final Stage stage) {
    stage.setTitle("HTML");
    stage.setWidth(500);/*from  w  ww.ja v a  2 s  .  co  m*/
    stage.setHeight(500);
    Scene scene = new Scene(new Group());

    VBox root = new VBox();

    final WebView browser = new WebView();
    final WebEngine webEngine = browser.getEngine();

    ScrollPane scrollPane = new ScrollPane();
    scrollPane.setContent(browser);

    webEngine.getLoadWorker().stateProperty().addListener(new ChangeListener<State>() {
        @Override
        public void changed(ObservableValue ov, State oldState, State newState) {

            if (newState == Worker.State.SUCCEEDED) {
                stage.setTitle(webEngine.getLocation());
                System.out.println("called");
            }

        }
    });
    webEngine.load("http://javafx.com");

    webEngine.loadContent("<b>asdf</b>");

    root.getChildren().addAll(scrollPane);
    scene.setRoot(root);

    stage.setScene(scene);
    stage.show();
}

From source file:org.pdfsam.ui.news.NewsStage.java

void loadAndShow(Consumer<Boolean> onSuccess) {
    WebEngine webEngine = browser.getEngine();
    webEngine.getLoadWorker().stateProperty().addListener((o, oldVal, newVal) -> {
        if (newVal == State.SUCCEEDED) {
            wrapHrefToOpenNative(webEngine.getDocument());
            onLoaded.andThen(onSuccess).accept(isShowing());
        }/*from  w w w. j a  va2 s.co  m*/
    });
    webEngine.load(newsUrl);
}

From source file:de.micromata.mgc.javafx.logging.LoggingController.java

@Override
public void initialize(URL location, ResourceBundle resources) {

    WebEngine engine = htmlView.getEngine();
    engine.getLoadWorker().stateProperty().addListener((ov, oldState, newState) -> {
        if (newState == javafx.concurrent.Worker.State.SUCCEEDED) {
            Document doc = engine.getDocument();
            //        if (guiWriteBuffer.isEmpty() == false) {
            //          List<LogWriteEntry> copy = new ArrayList<>(guiWriteBuffer);
            //          guiWriteBuffer.clear();
            //          addToGuiInGui(copy);
            //        }
        }//w w w  .jav a2 s .c o  m
    });
    engine.setJavaScriptEnabled(true);

    StringBuilder html = new StringBuilder();

    String init = "  var logCounter = 0; \r\n" + "var loggingAdapter;\n"
            + "function ALogCallback(callback) { \n" + " this.callback = callback;\n"
            + " this.doCallback = function(entries) {this.callback(entries); }\n" + "};"
            + "function LogConsoleBackend(logViewer) {\r\n" + "  this.supportsPoll = false;\r\n"
            + "  this.supportsSearch = false;\r\n" + "  this.init = function(logViewer) {\r\n"
            + "  this.logViewer = logViewer;\n" + "   loggingAdapter.init(this);\n" + "  }\r\n"
            + "  this.logPoll = function(lastTime, callback) {\r\n"
            + "    loggingAdapter.logPoll(lastTime, new ALogCallback(callback));\r\n" + "  }\r\n"
            + "  this.getLoggingConfiguration = function() {\n"
            + "    return loggingAdapter.getLoggingConfiguration();\n" + "  };"
            + "  this.logSelect = function(logFormData, callback) {\r\n"
            + "    //console.debug('LogConsoleBackend.logSelect');\n"
            + "    loggingAdapter.logSelect(logFormData, new ALogCallback(callback));\n" + "  };\n"
            + "  this.logSelectAttributes = function(logId, callback) {\n"
            + "    loggingAdapter.logSelectAttributes(logId, new ALogCallback(callback));\n" + "  }\n" + "}"
            + "  function logProvider() {\r\n" + "    var item = {\r\n"
            + "      logTime : '2006-01-01 12:12',\r\n" + "      logLevel : 'Note',\r\n"
            + "      logMessage : 'Hello ' + ++logCounter,\r\n" + "      logAttributes : [ {\r\n"
            + "        typeName : \"AKey\",\r\n" + "        value : 'A value'\r\n" + "      }, {\r\n"
            + "        typeName : \"BKey\",\r\n" + "        value : 'B value'\r\n" + "      } ]\r\n"
            + "    };\r\n" + "    return [ item ];\r\n" + "  }\r\n" +

            "var logViewer = new GLogViewer({\r\n" + "    logListId : 'glogentries',\r\n"
            + "    formId : 'glogform',\r\n" + "    maxItems: 100,\r\n" + "    logPollTimeout: 1000,\r\n"
            + "    enableEmbeddedDebugger: false\n" + "\r\n" + "  });\n" + "window.logViewer = logViewer;\n";

    html.append("<html><head>").append(getHtmlHeader())

            .append("\n<script  type=\"text/javascript\">\n").append(init).append("\n</script>\n")
            .append("</head>").append("<body>\r\n");
    html.append(LogHtmlWindowServlet.getGLogHtmlForm());
    html.append("</body>");

    engine.loadContent(html.toString());
    engine.getLoadWorker().stateProperty().addListener((observable, oldValue, newValue) -> {
        try {

            JSObject window = (JSObject) engine.executeScript("window");
            window.setMember("loggingAdapter", loggingAdapter);

            engine.executeScript("console.debug = function(message){ loggingAdapter.jsdebug(message); };\n"
                    + "console.warn = function(message){ loggingAdapter.jswarn(message); };\n"
                    + "console.error = function(message){ loggingAdapter.jserror(message); }; console.debug('console redirect initialized');\n");
            //        JSObject logViewer = (JSObject) engine.executeScript("logViewer");
            //        logViewer.call("setBackend", loggingAdapter);
            engine.executeScript("logViewer.setBackend(new LogConsoleBackend());");
        } catch (RuntimeException ex) {
            ex.printStackTrace();
        }

    });
    INSTANCE = this;
    LoggingEventListenerRegistryService listenerRegisterService = LoggingServiceManager.get()
            .getLoggingEventListenerRegistryService();

    listenerRegisterService.registerListener(FxLogconsoleLogWriteEntryEventListener.class);
    listenerRegisterService.registerListener(FxLogconsoleLogRegisteredCategoryChangedEventListener.class);
    listenerRegisterService.registerListener(FxLogconsoleLogRegisteredLogAttributesChangedEventListener.class);
}

From source file:org.openbase.display.WebTab.java

private static WebView newWebView() {
    logger.info("init new WebView...");
    WebView webView = new WebView();
    WebEngine webEngine = webView.getEngine();
    webEngine.setJavaScriptEnabled(true);
    webEngine.setOnAlert((WebEvent<String> event) -> {
        ExceptionPrinter.printHistory(new InvalidStateException("Webengine alert detected!",
                new CouldNotPerformException(event.toString())), logger);
    });/*  ww w. j av  a  2 s . c o  m*/
    webEngine.setOnError((WebErrorEvent event) -> {
        ExceptionPrinter.printHistory(new InvalidStateException("Webengine error detected!",
                new CouldNotPerformException(event.toString())), logger);
    });
    webEngine.getLoadWorker().stateProperty().addListener((ObservableValue<? extends Worker.State> observable,
            Worker.State oldValue, Worker.State newState) -> {
        Throwable exception = webEngine.getLoadWorker().getException();
        if (exception != null && newState == Worker.State.FAILED) {
            ExceptionPrinter.printHistory(new InvalidStateException("Webengine exception detected!", exception),
                    logger);
        }
    });

    CookieManager.getDefault();
    return webView;
}