Details
-
Enhancement
-
Resolution: Fixed
-
P3
-
8u60
-
b105
-
x86
-
windows_8
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8149213 | 8u101 | Andy Herrick | P3 | Resolved | Fixed | b01 |
JDK-8147988 | 8u92 | Andy Herrick | P3 | Resolved | Fixed | b04 |
JDK-8155294 | emb-8u101 | Andy Herrick | P3 | Resolved | Fixed | b01 |
Description
A DESCRIPTION OF THE REQUEST :
Some browsers like Google Chrome and Microsoft Edge make it very difficult to launch a JNLP file with Java Webstart.
We came across another solution that should overcome this issue in most cases. It is based on defining an own protocol handler for Java Webstart.
In the following example we use a protocol named "jnlp" which can be used within an HTML page or Javascript:
• The URI is "jnlp:http://myjnlpfile.jnlp"
• The browser will search for a protocol handler "jnlp" in the operating system and execute the registered application
• The command may look like this: "javaws.exe jnlp:http://myjnlpfile.jnlp"
The "Javaws.exe" does not understand the argument "jnlp:http://myjnlpfile.jnlp".
Nevertheless it should be less complicated to remove the prefix "jnlp:" within the code of "Javaws.exe".
Furthermore it would be helpful that Java supports "data" URI's in general.
We could then launch a Java Webstart file coming a script running in the browser:
• The "data" URI is "data:application/x-java-jnlp-file;base64,PGpubHAgc3BlYz0iMS4wKyIgY29kZWJhc2U9Imh0dHBzOi8vZXhhbXBsZS5jb20iPi4uLjwvam5scD4="
• The resulting "jnlp" URI is "jnlp:data:application/x-java-jnlp-file;base64,PGpubHAgc3BlYz0iMS4wKyIgY29kZWJhc2U9Imh0dHBzOi8vZXhhbXBsZS5jb20iPi4uLjwvam5scD4="
It would be great if the Java installer could register a protocol handler for Java Webstart as described above.
Here are some links which decribe how to register protocol handlers amongst operating systems:
• https://msdn.microsoft.com/library/aa767914(v=vs.85).aspx
• http://superuser.com/questions/548119/how-do-i-configure-custom-url-handlers-on-os-x
• http://stackoverflow.com/questions/18534591/how-to-register-a-url-protocol-handler-in-node-js
We already tested protocol handlers successfully with:
• Mozilla Firefox
• Internet Explorer
• Microsoft Edge
• Google Chrome
• Opera
JUSTIFICATION :
Since support for applets is declining, we have to rely on other ways to start java applications over the web.
Some browsers like Google Chrome and Microsoft Edge make it very difficult to launch a JNLP file with Java Webstart.
We came across another solution that should overcome this issue in most cases. It is based on defining an own protocol handler for Java Webstart.
In the following example we use a protocol named "jnlp" which can be used within an HTML page or Javascript:
• The URI is "jnlp:http://myjnlpfile.jnlp"
• The browser will search for a protocol handler "jnlp" in the operating system and execute the registered application
• The command may look like this: "javaws.exe jnlp:http://myjnlpfile.jnlp"
The "Javaws.exe" does not understand the argument "jnlp:http://myjnlpfile.jnlp".
Nevertheless it should be less complicated to remove the prefix "jnlp:" within the code of "Javaws.exe".
Furthermore it would be helpful that Java supports "data" URI's in general.
We could then launch a Java Webstart file coming a script running in the browser:
• The "data" URI is "data:application/x-java-jnlp-file;base64,PGpubHAgc3BlYz0iMS4wKyIgY29kZWJhc2U9Imh0dHBzOi8vZXhhbXBsZS5jb20iPi4uLjwvam5scD4="
• The resulting "jnlp" URI is "jnlp:data:application/x-java-jnlp-file;base64,PGpubHAgc3BlYz0iMS4wKyIgY29kZWJhc2U9Imh0dHBzOi8vZXhhbXBsZS5jb20iPi4uLjwvam5scD4="
It would be great if the Java installer could register a protocol handler for Java Webstart as described above.
Here are some links which decribe how to register protocol handlers amongst operating systems:
• https://msdn.microsoft.com/library/aa767914(v=vs.85).aspx
• http://superuser.com/questions/548119/how-do-i-configure-custom-url-handlers-on-os-x
• http://stackoverflow.com/questions/18534591/how-to-register-a-url-protocol-handler-in-node-js
We already tested protocol handlers successfully with:
• Mozilla Firefox
• Internet Explorer
• Microsoft Edge
• Google Chrome
• Opera
JUSTIFICATION :
Since support for applets is declining, we have to rely on other ways to start java applications over the web.
Attachments
Issue Links
- backported by
-
JDK-8147988 Register a protocol handler for Java Webstart
-
- Resolved
-
-
JDK-8149213 Register a protocol handler for Java Webstart
-
- Resolved
-
-
JDK-8155294 Register a protocol handler for Java Webstart
-
- Resolved
-
- duplicates
-
JDK-8055464 Add a URL scheme handler to reliably launch .jnlp files - java part
-
- Closed
-
- relates to
-
JDK-8167306 Side effects of using url schema handler.
-
- Resolved
-