applet
, object
and embed
Tags
This chapter includes the following topics:
This chapter explains to HTML authors how and when to use the
applet
, object
, and embed
tags
to add Java applets to Web pages. In addition, this chapter provides
guidelines for deploying applets on the Internet and Intranets, and
for use with different browsers.
How you deploy an applet depends on whether users access the Web page through the Internet or an Intranet, and the type of browser they use. Note this information about your users, then follow the general guidelines below.
When deploying applets:
Use the applet
tag if the Web page is accessed through the Internet.
Use the object
or embed
tag if the Web page is accessed through an Intranet.
When deploying applets:
For Internet Explorer only, use
the object
tag.
For the Mozilla family of browsers
only, use the embed
tag.
If you must deploy an applet in a mixed-browser environment, follow the guidelines in the section Deploying Applets in a Mixed-Browser Environment.
applet
tagYou use the applet tag to deploy applets to a multi-browser environment.
For complete details on the applet
tag, read the W3
HTML specification.
Note: The HTML specification states that the applet
tag is deprecated, and that you should use the object
tag instead. However, the specification is vague about how browsers
should implement the object
tag to support Java applets,
and browser support is currently inconsistent. Sun therefore
recommends that you continue to use the applet
tag as a
consistent way to deploy Java applets across browsers on all
platforms.
Following is an example of the applet
tag:
<applet code=Applet1.class width="200" height="200"> Your browser does not support the <code>applet</code> tag. </applet>
For both Internet Explorer and the Mozilla family of browsers, if Java Plug-in is installed (version 1.3.1_01a or later) then the highest installed version of Java Plug-in is invoked to run the applet.
NoteYou cannot use the |
object
tagYou use the object
tag to deploy applets that are to
be used only with Internet Explorer. For complete details on the
object
tag, read the W3
HTML specification. Following is an example of the object
tag:
<OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" width="200" height="200"> <PARAM name="code" value="Applet1.class"> </OBJECT>
The classid
attribute identifies which minimum
version of Java Plug-in to use.
The example shown below is the most commonly used form of the
classid
attribute. This example instructs Internet
Explorer to use the highest installed version of Java Plug-in.
classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
Following is an alternative form of the classid
attribute:
classid="clsid:CAFEEFAC-xxxx-yyyy-zzzz-ABCDEFFEDCBA"
In this form, "xxxx", "yyyy", and "zzzz"
are four-digit numbers that identify the minimum version of Java
Plug-in to be used. For example, to use Java Plug-in version 1.6,
you specify:
classid="clsid:CAFEEFAC-0016-0000-0000-ABCDEFFEDCBA"
You use the optional codebase
attribute to specify if
and how to download the JRE.
The codebase
attribute has two forms:
codebase=<URL>
With this form, if
the JRE specified by the classid
attribute is not
installed locally, then the user is prompted to download the JRE
from the URL specified.
codebase=<URL>#Version=major,minor,micro,update
With
this form, if the version of the JRE specified in the codebase
attribute is greater than the version of the JRE specified by the
classid
attribute, then the user is prompted to
download the JRE from the URL specified.
Following is an example of how to use the codebase
attribute to set up automatic downloads from the Sun Java Web site:
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" width="200" height="200" codebase="http://java.sun.com/products/plugin/autodl/ jinstall-1_5_0-windows-i586.cab#Version=1,5,0,0"> <param name="code" value="Applet1.class"> </object>
Note: In this example the codebase=http://java.sun.com ...
line is broken for readability. In the actual HTML file it would be
one long line.
Sun has packaged each version of the JRE installer in Microsoft
cabinet (.cab
) file format. You can view
a list of these releases and the corresponding .cab
file
names.
You use the embed
tag to deploy applets that are to
be used only with the Mozilla family of browsers.
Following is an example of the embed
tag:
<embed code="Applet1.class" width="200" height="200" type="application/x-java-applet;version=1.6" pluginspage="http://java.sun.com/javase/downloads/ea.jsp"/>
The type attribute can have one of two forms:
type="application/x-java-applet;version=1.6"
With
this form, the highest installed JRE that supports the MIME type
i.e. application/x-java-applet;version=1.6
is invoked
to run the applet. If a JRE with a version number equal to or
greater than the version number specified is installed locally, then
that JRE is invoked. Otherwise the user is directed to the URL
specified as the value of the pluginspage
attribute.
type="application/x-java-applet;jpi-version=1.5.0_07
With
this form, a JRE with at least the specified update version given by
the the value of jpi-version
(in this example,
1.5.0_07) is invoked to run the applet. Otherwise the user is
directed to the URL specified as the value of the pluginspage
attribute.
You can deploy applets for users of both Internet Explorer and the Mozilla family of browsers in one of two ways:
When using a pure HTML approach to deploy applets in a mixed-browser environment, note the following:
Internet Explorer
Recognizes the object
tag
Ignores the contents of the
comment
tag
Mozilla browsers
Ignore an object
tag
with the classid
attribute
Interpret the contents of the comment
tag
Consider the following example code from an HTML page:
<object classid="clsid:CAFEEFAC-0016-0000-0000-ABCDEFFEDCBA" <param name="code" value="Applet1.class"> <comment> <embed code="Applet1.class" type="application/x-java-applet;jpi-version=1.6"> <noembed> No Java Support. </noembed> </embed> </comment> </object>
Instead of using the pure HTML approach described above, you can use JavaScript to deploy applets in a mixed-browser environment.
Through JavaScript, you:
Detect the user's browser through the
variable.appName
Use the document.write()
method to write a tag
based on the value of the appName
variable:
If the browser name equals "Mozilla", write the
embed
tag.
If the browser name equals "Microsoft Internet
Explorer", write the object
tag.
In the following example, the document.write()
method
outputs either an embed
or object
tag for
each user “on the fly”:
<html> <script language="Javascript"> var _app = navigator.appName; if (_app == 'Mozilla') { document.write('<embed code="Applet1.class"', 'width="200"', 'height="200"', 'type="application/x-java-applet;version=1.6">'); } else if (_app == 'Microsoft Internet Explorer') { document.write('<OBJECT ', 'classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"', 'width="200"', 'height="200">', '<PARAM name="code" value="Applet1.class">', '</OBJECT>'); } else { document.write('<p>Sorry, unsupported browser.</p>'); } </script> </html>