Mac OS/X – Sun/Oracle – Java Applet – Typical workspace interaction

Mac OS/X – Sun/Oracle – Java Applet – Typical workspace interaction

Google Chrome

Java Applet (needs permission to run) Chrome - Java Applet (needs permission to run)

So we are asked to confirm whether we want Java to run:

  • Always run on this site
  • Run this time

We chose to have it “Run this time”.

Chrome - Java Applet (Need to download the java plug-in)

We did not get very far.  We are greeted with a warning message stating “Missing Plug-in” and prompted to download Java plug-in.

There is no need to go much further.  Java is delivered as a 64-bit plugin on 64-bit Mac OS-X.  And, Google Chrome is 32-bit.

Safari

Safari - Java Applet

Safari is stucked at the “Missing Plug-in” spot.

And, even post install of Java Plug-in, Safari is not allowing the applet to run.

Firefox

Firefox - File Browse (pre plug-in acceptance)

So in Firefox, the browser asks whether it is OK to execute the “FileBrowse” plugin from Netapp; specifically upload.netapp.com

We reply yes and we are good.

Firefox - File Browse (post plugin acceptance)

We are able to click on the “Browse File” button and launch an Applet which exposes the “File Open” dialog on our screen.

So on a Mac with Java JRE installed, here is a round-up of Java JRE/Applet support:

  • Google Chrome – Stuck due to Sun/Oracle JRE being provided as a 64-bit utility and Chrome being to 32-bit
  • Apple Safari – Stuck
  • Firefox – Good

To review and get more granular insight into your Mac OS Support:

  • Launch “System Preferences”
  • In the other section, select “Java”

System Preferences

In the Java section, there are many options:

Java Control Panel - General

In the General section:

  • Access the “Network Settings” — Which allows one to choose a different proxy setting, than the one set for the browser

Java Control Panel - General - Network Settings

In the “Update” section:

Java Control Panel - Update

  • Choose whether you want Java updates to occur automatically
  • In our case, one can see we have a relative recent update.  Due to the recent proliferations of exploits you probably want it so

In the “Java” section:

Java Control Panel - JRE - Versioning (Select Version)

  • This is especially when you have two or more JREs installed, and you want to select the one you want
  • Obviously, you can also Disable all of them
  • Advanced users can also specify “Runtime parameters”

In the “Security” section:

Java Control Panel - Java Applet - Security Level

  • This is quite important as you are able to disable Java for all web browsers
  •  And, if you choose to enable it, be a bit more granular and set security level
  • Also, for security conscious configurations, choose which certificates you want exposed

In the “Advanced” section:

Java Control Panel - Advanced

So here I am thinking since the OS exposes the functionality to disable Java Plugin\applets, I am good if I choose to use the OS Functionality to do so.

I disabled it:

  • Access “System Preferences”
  • In the “System Preferences” window, “Other” section : Choose the “Java” icon
  • In “Java Control Panel” \ “Security” Tab, disable “Java” in the browsers

Java Control Panel - Security ( java disabled in browser)

So here I go return to Firefox and try to use the NetApp applet and it still works.

So I am thinking let me restart my browser and here again, I am still working.

So I am thinking those NetApp Developers are very smart and that they dutifully and gracefully degraded to HTML; as it allows file upload, as well.

But, before packing up my little project, I am thinking I should view the web Application’s source.

Wish I could say I found the “View Source” button easily, but that I had to Google for it.

How to view Source

http://support.mozilla.org/en-US/questions/862421

Tools Menu -> Web Developer -> click View Page Source

It seems that the Applet is still being used and ran.  The code for Applet is present and there is no conditional statement around it:



<APPLET  
	CODE = "org.sslupload.FileBrowseApplet.class" 
	archive="/hq/Userfile?send=applet&name=SSLUpload.jar" 
	WIDTH = 100% 
	HEIGHT = 40 
	NAME = "FileBrowse" 
	MAYSCRIPT = true>

</APPLET>

So it seems that the Java Applet is still being ran.

So Googled again. How to disable Java in Firefox:

http://support.mozilla.org/en-US/kb/How%20to%20turn%20off%20Java%20applets
How to turn off Java applets

This article explains how to disable the Java plugin in Firefox so that Java applets no longer run.

By default, Firefox allows Java applets to launch automatically. However, you may decide that you do not want Java applets to run. To disable Java applets in Firefox:

On the menu bar, click on the Tools menu, and then click Add-ons. The Add-ons Manager tab will open.
In the Add-ons Manager tab, select the Plugins panel.
Click on the Java Plug-in 2 for NPAPI Browsers (Mac OS 10.6) or Java Applet Plug-in (Mac OS 10.7 and above) to select it.
Click on the Disable button (if the button says Enable, Java is already disabled).
Java applets will no longer be permitted to launch in Firefox.

Firefox - Plugins - Java Applet Plug-in

Once we clicked on the disable button on the “Java Applet Plug-in” entry, we are good:

Firefox - Plugins - Java Applet Plug-in (disabled)

the applet icon is now “X-ed” out.

So moral of the story.

  • Certain functionalities might be disabled at the OS level, but sometimes 3rd parties in this case Mozilla built a way around it.  In Firefox, they are controlling their own destiny by exposing Java JRE toolset as a plug-in

 

References:

 

 

 

One thought on “Mac OS/X – Sun/Oracle – Java Applet – Typical workspace interaction

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s