How do I use Java with the Google Chrome browser?

 

NPAPI support by Chrome

The Java plug-in for web browsers relies on the cross platform plugin architecture NPAPI, which has long been, and currently is, supported by all major web browsers. Google announced in September 2013 plans to remove NPAPI support from Chrome by “the end of 2014”, thus effectively dropping support for Silverlight, Java, Facebook Video and other similar NPAPI based plugins.

[dfads params=’groups=-1′]

 

 

 

 Enabling NPAPI in Chrome Version 42 and later

As of Chrome Version 42, an additional configuration step is required to continue using NPAPI plugins.

  1. In your URL bar, enter:
    chrome://flags/#enable-npapi
  2. Click the Enable link for the Enable NPAPI configuration option.
  3. Click the Relaunch button that now appears at the bottom of the configuration page.

Java plug-in needs permission

 

If you see a message within Chrome that says Java(TM) needs your permission to run, you will need to respond to the Chrome options in order to run plug-ins on the page. Options vary according to the version of Chrome.

Chrome plug-in blocked icon (in address bar)

Look for the blocked plug-in icon in the Chrome address bar. Clicking on the icon will display Plug-ins were blocked on this page and plug-in options

  • Click Always allow plug-ins on [name of site] to allow plug-ins (including Java) to run on all this site’s pages.
  • Click Run all plug-ins this time to allow the plug-in (including Java) content on the page to run only until you leave this page.
  • Click Continue blocking plug-ins to prevent plug-ins from running on the page.

In addition, you can manage permissions on a site basis through the Manage plug-in blocking option.

Chrome message bar

  • Click Run this time to allow the Java content on the page to run only until you leave this page.
  • Click Always run on this site to allow Java to run on all this site’s pages. You will not see this message again for pages on this site.

Additional plug-in required

If you see a message bar within Chrome that says Java(TM) is required to display some elements on this page, click on Install plug-in in the Chrome message bar, or download from java.com.

[dfads params=’groups=-1′]

Plug-in out of date

If you see a message bar within Chrome that says Java(TM) was blocked because it is out of date, click on Update plug-in in the Chrome message bar to get the latest Java.

Reference:

https://java.com/en/download/faq/chrome.xml

Alternatives to NPAPI plugin

After upgrading the earlier versions of Chromium browsers to later versions greater than 42, internet users have started complaints that the JAVA plugins are not supported by chrome. After a bit research, found that chromium browsers have disabled NPAPI plugin-in on their latest versions. The deprecation of NPAPI plug-in caused the JAVA plugins to be blocked in Chrome. 

[dfads params=’groups=-1′]

What is NPAPI plug-in? (Source: Wiki)

Netscape Plugin Application Programming Interface (NPAPI) is a cross-platform plugin architecture used by many web browsers.

It was first developed for Netscape browsers, starting in 1995 with Netscape Navigator 2.0, but was subsequently adopted in Internet Explorer 3 in 1996 and implemented by many other browsers, although some browsers later dropped support.

For stability and security reasons, Google Chrome decided, in 2013, to start phasing out support for NPAPI. As of Chrome version 42, NPAPI is disabled by default and must be re-enabled explicitly. Google intends to remove support entirely in version 45, due in September 2015. 

Alternatives to NPAPI (Source: chromium.org)

With the deprecation of NPAPI, some developers have asked which modern technologies can be used to implement features which in the past would have relied on a platform-specific NPAPI plug-in. In answer to these questions we have composed the following list of common NPAPI use cases and web platform alternatives.

In general, the core standards-based web technologies (HTML/CSS/JS) are suitable for most client software development. If your application requires access to features outside the web sandbox, myriad Chrome Extension and App APIs offer access to OS features.

Video and audio

A common use case for NPAPI plug-ins on the modern web is embedded video and/or audio. A range of modern web technologies exist to facilitate media streaming.  The basic building blocks are WebRTC and media elements:

HTML5 Media Elements:  The HTML5 Specification provides a rich media platform through the <audio> and <video> elements. More complicated use cases can be achieved using the <canvas> element (for example check out the Video FX Chrome Experiment).

WebRTC:  WebRTC was designed for real time communication between peers and the technology can also be used for applications like live streaming media and data. Google’s Chromecast device uses WebRTC to stream HD video between a browser and TV.

Several features on top of these building blocks support more advanced use cases:

Adaptive Streaming

The ability to adapt media streaming to an individual consumer is critical in delivering high-quality content to a large audience. In the past this capability has been provided by technologies such as Silverlight’s smooth streaming and Quicktime’s HTTP live streaming. The Media Source Extensions to the HTML media element provide the capability to adapt a stream to an individual consumer on the modern web. Html5rocks has put together a great example of how to use the Media Source Extensions to implement some of these common use cases.

Video Conferencing

Several of the most popular NPAPI extensions including Facebook Video Chat and Google Talk provide video conferencing functionality within the browser. With the introduction of WebRTC video conferencing is facilitated directly through JavaScript APIs. The Cube Slam Chrome Experiment provides an example of peer to peer video conferencing via WebRTC.

Digital Rights Management

Encrypted Media Extensions give HTML5 video the DRM capabilities that previously would have required the use of a platform specific plug-in. The WebM project has provided a demo which performs video playback using the Encrypted Media Extensions of the video element.  For more information, check out the EME HTML5 Rocks article.

Closed Captioning

WebVTT and the <track> element (a child element of <video>) enable web developers to add timed-text captioning capabilities to their HTML apps.

Communicating with native applications

Try the Native Messaging API for Chrome Apps and Extensions.

Games & 3D

Native Client (NaCL) provides a rich environment for cross-platform game development. Many games have already been ported to or designed for NaCL. A number of examples and detailed tutorials to get started with NaCL are available on the NaCL development site. The WebGL specification provides a high-performance platform for hardware-accelerated 3D graphics in the browser. Chrome experiments has an entire category dedicated to examples and demos of various WebGL use cases.

Security

Some services have relied on NPAPI-based security techniques.  We recommend switching to TLS or, soon, Web Crypto.

Hardware access

In the past it has often been necessary to write platform specific plug-ins to access system hardware such as webcams, microphones, USB devices, and bluetooth. Direct access to local media streams such as webcams and microphones can now be requested directly from the web via the WebRTC Media Capture specification. Chromium also provides an App API for access to USB hardware and another API for accessing Bluetooth devices.

Screen capture

Chrome extensions can perform screen capture or streaming using either Desktop Capture for full screen capture or the Tabs API captureVisibleTab for individual tab content capture. 

[dfads params=’groups=-1′]

Reference:

http://www.chromium.org/developers/npapi-deprecation

http://en.wikipedia.org/wiki/NPAPI