The Mozilla
Organization
At A Glance
Feedback
Get Involved
Newsgroups
License Terms
Newsbot
Developer Docs
Roadmap
Projects
Ports
Module Owners
Hacking
Get the Source
Build It
Testing
Download
Bugzilla
Bug Writing
Tools
View Source
Tree Status
New Checkins
Submit A Bug
FAQ
Search

open jvm integration

Contact: Ed Burns (edburns@acm.org)
Last Updated: 15 February 2000;

Latest Status

also check the mozilla.org status update page for more information
  • Due to the fact that we're getting down to the wire, I'm going to do something that should have been done long ago: start tracking key issues from week to week. The status reports will be kept in simple text format and are available for all to see here.

  • Due to API changes in mozilla, the java plugin currently available from Sun Microsystems does not work with anything more recent than mozilla Milestone 12. If you want to see Java running in mozilla, you must use M12. Currently, Java in mozilla is only known to work on WindowsNT, maybe 95, or 98, and the Mac. UNIX support is still stuck waiting for a java plugin implementation.

    If you want to get java working on Win32, you must go to [2] and apply for the early access program. Then Sun will send you a mail with the details about how to get the JDK or JRE binary. Once you've got the binary, go ahead and install it. Then you have to build mozilla (you know how to do that), then copy %JDKHOME%\jre\bin\npjava*.dll to mozilla\dist\win32*\bin\plugins. This effectively installs the Java plugin into Mozilla. You can then start mozilla and visit pages with applets. Please file bugs through bugzilla category Browser/OJI.

    If you want to see Java running on the Mac, visit [3].

    As always, if you feel inclined to write your own Java VM and Java Plugin, take a look at Introduction to OJI Internals. This document is an introduction to the topic of what Mozilla requires of an OJI plugin.
[2] http://developer.java.sun.com/developer/surveys/restricted/early_access_survey.html

[3] http://www.mozilla.org/oji/MRJPlugin.html

The Open JVM Integration project (OJI) is working to extend the browser to allow Java virtual machines to be plugged into Mozilla. OJI will allow the applet and object tags to show Java applets on a page and support LiveConnect (the bridge between Java and JavaScript). Most of the OJI project involves extending the existing Plug-in API to define what we're calling the Open JVM Plug-in API. Although some of these are JVM-specific much of the changes are of general interest to plug-in developers.

Our strategy for developing the Open JVM Plug-in API is to enlist the help of third-party JVM providers and the mozilla.org community by periodically posting our source code to mozilla.org and by actively inviting partners to join us in the design and development process. We've set up the netscape.public.mozilla.oji news group for discussions. Currently we're working with JavaSoft, Apple and others to make their Java plug-ins be more full featured replacements to the Netscape JVM. We plan to have our partner's JVMs be available at the same time 5.0 is released.

What does this mean for end-users? Several things:

  • Applets and LiveConnect running in Mozilla,
  • a choice of Java virtual machines in Communicator 5.0,
  • backward compatibility with previous Communicator releases,
  • a chance to migrate to JVMs supporting Java 1.2 and future versions.
For Java developers, this means:
  • ability to write Java code depending on newer versions of Java and AWT,
  • backward compatibility for Java code between Communicator releases,
  • choice of JVMs when deploying Java-based browser applications.
And for Java VM providers:
  • a vehicle for delivering their Java virtual machine to the web user community,
  • opportunity to continue to enhance Java support in Mozilla and Communicator.

How can you help? For now we're looking for people who can help review the code we've developed so far, and are willing to work with us to improve things. This includes JVM providers, as well as general plug-in developers. In the future, we'll need people to help us with testing and verification. The code now is primarily located in the following directories:
  • mozilla/modules/plugin
  • mozilla/modules/oji
The Open JVM Plug-in API depend on the XPCOM object model which is described in Extending Mozilla. Be sure to read that first, and stay tuned for more documentation and updated headers in the future.

We welcome your comments. Please direct them to netscape.public.mozilla.oji or netscape.public.mozilla.general.

Copyright © 1998-2000 The Mozilla Organization.
Last modified February 16, 2000.