Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

OSX Blocking JNLP Launch Java1.8U40 - Anyone Know Why?

We deploy our application as a JNLP launch file and/or as a webpage applet.

I have a customer that updated his MAC OSX system to the latest Java Version 1.8_40. After upgrading the JNLP launch stopped working. It seems to start Java (flashes blue java logo) then stops. No Exception is thrown. I suspect yet another OSX security hurdle.

  • We adjusted his OSX Security settings to trust our application.
  • We adjusted his Java security to trust our site.
  • We also adjusted the Safari preferences to allow the application to run unrestricted ("unsafe mode").
  • The application is signed with a code signing certificate.
  • The customer can use the Applet launch method using the safari Java plugin.
  • All other customers (OSX & Windows) are generally fine. If this is a new MAC Java issue I'd like to get ahead of it.

Anyone else out there see this? Any clues about what is causing the issue?

like image 779
Punisher Avatar asked Mar 04 '15 21:03

Punisher


People also ask

Why is JNLP not launching?

Sometimes, your system might not recognize JNLP files properly for executing them with the Java Web Start application. In such cases, you will have to modify the file association of your computer to correctly open the JNLP files with the Java Web Start application.

How do I open a JNLP file on Mac?

jnlp file in the Mac OS X Finder, right click on the file and select Open With -> Java Web Start. Use the Security Preference to either allow unsigned applications or open the recently downloaded unsigned application.

How to run JNLP file in Java?

Right-click a JNLP file and click “Open With.” Select the “Java Web Start Launcher” application in the list or click “Browse,” browse to the “C:\Program Files (x86)\Java\jre[version]\bin” folder on your computer and double-click the “Javaws.exe” program file.

Where is Java Web Start launcher located?

You can find the Java Web Start Launcher program at <JRE_HOME>\bin\javaws on the local system. To run the downloaded . jnlp file with verbose tracing, perform the following steps: Enable tracing in the local JRE control panel.


1 Answers

Our guess is that the cause of this bug has been backported to 8u40. We find that the application cannot get focus once the new blue Java splash screen is shown. We can also reproduce this on all the demo webstart apps on Oracle's own site, so it isn't our code.

You can confirm this bug by running your webstart instance with -Xnosplash to skip that splash screen. Unfortunately you cannot add that parameter to the jnlp file.

We can only reproduce this problem on OSX 10.10 (Yosemite).

A workaround (if you can control the client Java settings) is to add "-Xdebug" in Java Control Panel -> Java -> View... -> Runtime Parameters.

Update: the bug has been fixed and backported to 1.8u40. Oracle have also silently updated their downloads to the new build (1.8u40b27) as can be seen here I don't know that people already running 1.8u40 will get an update automatically.

like image 64
Ari Maniatis Avatar answered Sep 28 '22 15:09

Ari Maniatis