前言
这篇文章介绍了怎样把 Java applets 程序嵌入到网页中去。此外,还提供了部署 applet 程序到内网或者外网、不同浏览器下的使用等指导内容。
总则
如何部署 applet 取决于客户访问网页的方式以及使用的浏览器类型。注意这一点以后,按以下步骤进行操作。
针对内网使用还是外网使用:如果网页是通过外网访问,使用 applet 标签;如果是内网,可以使用 object 或者 embed 标签。
针对不同的浏览器类型:object 标签只能支持 IE 浏览器;而 embed 标签只支持 Mozilla 浏览器。
如果您必须把 applet 部署在一个支持多种浏览器的环境中,请参阅本文后半部分:applet 在多浏览器环境下的部署。
使用 applet 标签
针对多浏览器环境,要使用 applet 标签。关于 applet 标签规范约束,请参阅 W3 网页标准。
注明:网页标准规定反对使用 applet 标签,建议用 object 标签替代。但是标准中关于浏览器如何支持 object 标签嵌入 applet 程序的说明是模糊的,而且浏览器产品对 object 标签的支持也很混乱。因此 sun 公司推荐还是使用 applet 标签把 applet 程序部署在各种平台下的浏览器中。
applet 标签使用示例:
<applet code=Applet1.class width="200" height="200">
Your browser does not support the <code>applet</code> tag.
</applet>
对于无论 IE 还是 Mozilla 系列的浏览器,如果已经安装了 java 插件,applet 就可以运行。
注:applet 标签不支持 jre 的自动安装。
使用 object 标签
object 标签仅仅支持 IE 浏览器用户。关于 object 标签规范约束,请参阅 W3 网页标准。
object 标签使用示例:
<OBJECT
classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
width="200" height="200">
<PARAM name="code" value="Applet1.class">
</OBJECT>
classid 属性指定了使用的 Java 插件的版本。下面的代码是 classid 属性的一般用法。代码的作用是命令 IE 浏览器使用安装的最新版本的 Java 插件。
classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
可以使用下面代码替换 classid 值:
classid="clsid:CAFEEFAC-xxxx-yyyy-zzzz-ABCDEFFEDCBA"
其中,"xxxx", "yyyy", 以及 "zzzz" 是4个数字,用来指出要使用的 Java 插件的版本。比如,如果使用 Java 插件 1.5.0,可以这样定义:
classid="clsid:CAFEEFAC-0015-0000-0000-ABCDEFFEDCBA"
codebase 属性定义了如何下载 JRE。codebase 属性有两种写法:
codebase=<URL>
和
codebase=<URL>#Version=major,minor,micro,update
第一种写法表示,如果 classid 中指定的 jre 没有安装,客户端会自动下载 URL 中指定的 JRE 下载地址。第二种写法表示,如果 codebase 中指定的 jre 版本高于 classid 属性指定的 jre 版本,客户端会立即根据给定的 URL 下载 JRE。下面代码示例中说明了如何使用 codebase 属性自动安装 sun 官网公布的 jre:
<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>
注明:codebase=http://java.sun.com ... 一行中的内容,为了可读性考虑被分为两行,实际中必须显示在一整行中。sun 公司提供每个版本的 jre 下载。
使用 embed 标签
使用 embed 标签仅仅可以把 applet 应用程序部署到 Mozilla 系列的浏览器中。embed 标签使用示例:
<embed code="Applet1.class"
width="200" height="200"
type="application/x-java-applet;version=1.5.0"
pluginspage="http://java.sun.com/j2se/1.5.0/download.html"/>
type 属性可以有两种写法:
type="application/x-java-applet;version=1.5.0"
和
type="application/x-java-applet;jpi-version=1.5.0_01
使用第一种写法中,指明了使用本标签要求的最低版本的 MIME 类型:application/x-java-applet;version=1.5.0 。如果 JRE 版本号不低于指定的版本,就可以使用。否则客户端会自动跳转到 pluginspage 属性指定的 URL 地址。第二种写法中,客户端安装的 JRE 必须是给定的 jpi-version (本例中是 1.5.0_01 ),否则客户端会直接跳转到 pluginspage 属性指定的 URL 地址页面。
applet 应用程序在多浏览器环境中的部署。
可以通过纯 HTML 或者 JavaScript 可以把 applet 程序部署在无论是 IE 还是 Mozilla 系列浏览器中。
使用纯 HTML
部署 applet 到多浏览器环境时注意,IE 浏览器要能识别 object 标签,而且要忽视 comment 标签;而 Mozilla 系列浏览器要能忽略带有 classid 属性的 object 标签,要能解释 comment 标签的内容。示例:
<object
classid="clsid:CAFEEFAC-0015-0000-0000-ABCDEFFEDCBA"
<param name="code" value="Applet1.class">
<comment>
<embed code="Applet1.class"
type="application/x-java-applet;jpi-version=1.5.0">
<noembed>
No Java Support.
</noembed>
</embed>
</comment>
</object>
使用 JavaScript
使用 JavaScript 可以通过 appName 参数得知客户端浏览器类型;可以根据 appName 参数使用 document.write() 方法进行适配:a,如果浏览器名字是“Netscape” ,写 embed 标签;b.如果浏览器名字是“Microsoft Internet Explorer”,就写 object 标签。代码示例:
<html>
<mce:script language="Javascript"><!--
var _app = navigator.appName;
if (_app == 'Netscape') {
document.write('<embed code="Applet1.class"',
'width="200"',
'height="200"',
'type="application/x-java-applet;version=1.5.0">');
}
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('Sorry, unsupported browser.
');
}
// --></mce:script>
</html>
当然,读者也可以使用 HTML Converter 工具为适应多浏览器环境进行 object 标签与 embed 标签之间的转换。
原文链接:
http://java.sun.com/j2se/1.5.0/docs/guide/plugin/developer_guide/using_tags.html
转载于:
http://blog.csdn.net/defonds/article/details/4458924
分享到:
相关推荐
标签用于包含对象,比如图像、音频、视频、Java applets、ActiveX、PDF 以及 Flash。 object 的初衷是取代 img 和 applet 元素。不过由于漏洞以及缺乏浏览器支持,这一点并未实现。 浏览器的对象支持有赖于对象...
在HTML中,`<object>`标签是一个非常重要的元素,它用于在网页中嵌入各种...理解并熟练运用`<object>`标签能帮助开发者创建更丰富的交互式网页。在实际应用中,还需要注意兼容性问题,为不同浏览器提供适当的备用方案。
- 为了确保兼容性,使用`<object>`或`<embed>`标签代替`<applet>`标签,配合`param`标签传递参数。 - Applet和JavaScript的交互可能会受到浏览器的同源策略限制,确保它们在同一域名下运行。 - 使用`<applet>`标签时...
随着Web技术的发展,`<applet>`标签已经被废弃,取而代之的是更安全的`<object>`和`<embed>`标签。 安全是Java Applet的一个重要话题,因为它们可以在用户的机器上执行代码。为了防止恶意软件,Java引入了沙箱模型...
JavaScript可以通过创建一个`<object>`或`<embed>`标签来引用Java Applet,并通过这些对象的方法与Applet进行通信。例如,在JavaScript中,你可以调用`appletName.methodName()`来执行Applet中的公共方法。 2. **...
使用`<applet>`标签在HTML中插入Applet,并通过`object`或`embed`标签支持现代浏览器。同时,Applet的安全限制也需要考虑,因为它们运行在沙箱环境中,不能访问本地文件系统除非用户明确允许。 总的来说,这个...
在现代Web开发中,`<applet>`标签已被`<object>`或`<embed>`标签取代,因为Java Applet已逐渐被更现代的技术如JavaScript和WebGL所取代。 8. **Java Web Start与Applet的替代**:随着Java Applet的安全性和性能问题...
总的来说,这个课堂案例主要介绍了如何在JSP页面中使用`jsp:plugin`动作插入和管理Java Applet,以及如何处理不支持Applet的浏览器情况。尽管现代Web开发中Applet的使用已经减少,但了解这一历史背景和机制对于全面...
7. `<PARAM>` 标签:为`<APPLET>`、`<EMBED>`和`<OBJECT>`等对象元素提供参数。例如,可以设置参数名(`NAME`)和值(`VALUE`),以便对象能够正确运行或显示。 8. `<PLAINTEXT>` 标签:在HTML中,这表示接下来的...
例如,<applet> 标签(现在已被<embed>或<object>标签替代)。 最后,文章提到了一些重要的Java书籍,如Y. Daniel Liang的《Introduction to Java Programming》以及Cay S. Horstmann和Gary Cornell合著的《Core ...
`jsp:plugin`是JSP规范提供的一种机制,用于生成`object`和`embed`标签,使浏览器能够加载并运行Java applet。它依赖于Sun Microsystems的Java插件,若用户未安装,将自动触发下载。值得注意的是,Java插件使用的是...
- **定义**:`<embed>`标签是另一种用于嵌入外部内容的方式,通常用作`<OBJECT>`标签的替代方案。 - **属性详解**: - `src`:指定要加载的Flash文件的URL。 - `quality`:设置播放质量。 - `pluginspage`:指向...
5. **applet**: 已废弃的标签,用于嵌入Java Applet。现代推荐使用`<embed>`或`<object>`。 6. **area**: 与`<map>`配合使用,为图像映射定义可点击区域。 7. **attribute**: 非标准标签,用于扩展HTML元素属性,但...
- `<applet>`:已废弃,用于嵌入Java小应用程序,现在可以使用`<object>`或`<embed>`标签替代。 - `<area>`:在`<map>`标签内定义图像映射的可点击区域。 - `<b>`:定义粗体文本。 - `<base>`:设置页面所有链接的...
- **文档组织**:内容按标签进行分类介绍,并提供了关于每个标签的基本信息(如支持级别、可用性等)以及示例代码。 - **参考文献**:文中提及了一些相关的参考资料,供读者进一步学习。 #### 二、HTML5标签详解 -...
* figure:定义媒介内容的分组,以及它们的标题 * figcaption:定义 figure 元素的标题 * footer:定义 section 或 page 的页脚 * header:定义 section 或 page 的页眉 * hgroup:定义有关文档中的 section 的信息 ...
在Java Web开发中,尤其是使用JSP(JavaServer Pages)时,`jsp:plugin`动作标签用于插入浏览器需要的OBJECT或EMBED元素,以确保Java Applet能够在用户浏览器上正确运行。本文将详细介绍`jsp:plugin`标签的使用方法...
插入方法通常是通过HTML的`<object>`或`<embed>`标签。 9. **插入Java Applet对象**: Java Applet是Java语言编写的小程序,可以在网页中运行。虽然现在使用较少,但在过去它们提供了一种在浏览器中执行复杂计算和...