javafx.application

## Class HostServices

- java.lang.Object
- - javafx.application.HostServices

-     public final class HostServices
      extends Object

  This class provides HostServices for an Application. This includes methods to get the code base and document base for an Application, show a web page in a browser, and communicate with the enclosing web page using JavaScript if the Application is running in a browser.
  Since:
    JavaFX 2.0

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getCodeBase()` Gets the code base URI for this application.
    `String` | `getDocumentBase()` Gets the document base URI for this application.
    `JSObject` | `getWebContext()` Returns the JavaScript handle of the enclosing DOM window of the web page containing this application.
    `String` | `resolveURI(String base, String rel)` Resolves the specified relative URI against the base URI and returns the resolved URI.
    `void` | `showDocument(String uri)` Opens the specified URI in a new browser window or tab.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getCodeBase

          public final String getCodeBase()

      Gets the code base URI for this application. If the application was launched via a JNLP file, this method returns the codebase parameter specified in the JNLP file. If the application was launched in standalone mode, this method returns the directory containing the application jar file. If the application is not packaged in a jar file, this method returns the empty string.
      Returns:
        the code base URI for this application.

    - #### getDocumentBase

          public final String getDocumentBase()

      Gets the document base URI for this application. If the application is embedded in a browser, this method returns the URI of the web page containing the application. If the application was launched in webstart mode, this method returns the the codebase parameter specified in the JNLP file (the document base and the code base are the same in this mode). If the application was launched in standalone mode, this method returns the URI of the current directory.
      Returns:
        the document base URI for this application.

    - #### resolveURI

          public final String resolveURI(String base,
                                         String rel)

      Resolves the specified relative URI against the base URI and returns the resolved URI.

      Example:

           HostServices services = getHostServices();
           String myImage = services.resolveURI(services.getDocumentBase(),
                                                "image.jpg");
           Image image = new Image(myImage);

      Parameters:
        `base` - the base URI against which to resolve the relative URI
        `rel` - the relative URI to be resolved
      Returns:
        the fully resolved URI.
      Throws:
        `NullPointerException` - if either the `base` or the `rel` strings are null.
        `IllegalArgumentException` - if there is an error parsing either the `base` or `rel` URI strings, or if there is any other error in resolving the URI.

    - #### showDocument

          public final void showDocument(String uri)

      Opens the specified URI in a new browser window or tab. The determination of whether it is a new browser window or a tab in an existing browser window will be made by the browser preferences. Note that this will respect the pop-up blocker settings of the default browser; it will not try to circumvent them.
      Parameters:
        `uri` - the URI of the web page that will be opened in a browser.

    - #### getWebContext

          public final JSObject getWebContext()

      Returns the JavaScript handle of the enclosing DOM window of the web page containing this application. This handle is used to access the web page by calling from Java into JavaScript. If the application is not embedded into a web page, this method return null.

      Example:

           JSObject jsWin = getHostServices().getWebContext();
           if (jsWin != null) {
               jsWin.eval("var b = document.body;" +
                          "var newdiv = document.createElement('div');" +
                          "newdiv.innerHTML = '<br>Hello from JavaScript!';" +
                          "b.appendChild(newdiv);");
           }

      Returns:
        handle of the enclosing DOM window of the web page containing this application

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2008, 2017, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.