Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8100846

Umbrella: Embedded JNLP support for DT to launch webstart

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: fx2.0
    • Fix Version/s: fx2.0
    • Component/s: deploy

      Description

      Goal:
          Provide a way to launch webstart application from inside the browser without loading of JNLP files from the server. Use copy embedded into web page instead.

      Justification:
          Important to improve startup time. Especially when launching small remote applications as allows to reduces number of network requests by up to 50%.
      This also make webstart deployment to be on par with applet deployment where embedded JNLP is already supported.
      It is critical to provide this functionality in the first release as it will be common denominator for features developer can rely on.

      Public API changes:
          a) embedJNLP option for ant task and javafxpackager will be also applicable to webstart (and not just applet case)
          b) new Deployment Toolkit API will accept jnlp_content argument in the parameter map
      Here is an example:
      <a href="Fish.jnlp" onclick="return !dtjava.launch(
             {url: 'Fish.jnlp',
              jnlp_content: 'BASE64 form of JNLP content'})">
         Launch me!
      </a>
      Note that exact DT API may change a little (new DT APIs are undergoing architectural review, this functionality is part of it).

      Implementation details:
          Most of the implementation changes are on JRE side and are based on what had been done in JRE7 for applets. Changes in FX runtime include ant task/packager and DT API changes. All of them are being actively rewritten anyways.

      Development effort:
          Work is largely done and available in the FX b38 (most of the pieces were in earlier but we updated DT to use this for b38).
      Some additional work (my estimate 3-5 man days) is required to fine tune the implementation. This falls into ongoing "improve DT for JavaFX" effort.

      SQE effort:
           As this is an optimization then most of the functionality should be covered by existing tests (as long as these tests are using recommended way to deploy JavaFX applications - i.e. ant task and new DT APIs).
          

        Attachments

          Activity

            People

            • Assignee:
              igor Igor Nekrestyanov (Inactive)
              Reporter:
              igor Igor Nekrestyanov (Inactive)
            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Imported: