<jsp:plugin>用于在浏览器中播放或显示一个对象(通常为Applet 或Bean)。
当JSP 网页被编译后送往浏览器执行时,<jsp:plugin>将会根据浏览器的版本替换成<object>标签或者<embed>标签。
一般来说,<jsp:plugin>会指定对象Applet 或Bean,同样也会指定类的名字和位置,另外还会指定将从哪里下载这个Java 组件。
<jsp:plugin
type="bean | applet"
code="classfilename"
codebase="classfiledirectoryname"
[ name="instancename" ]
[ archive="uritoarchive, ..." ]
[ align="bottom | top | middle | left | right" ]
[ height="displaypixels" ]
[ width="displaypixels" ]
[ hspace="leftrightpixels" ]
[ vspace="topbottompixels" ]
[ jreversion="jreversionnumber | 1.1" ]
[ nspluginurl="urltoplugin" ]
[ iepluginurl="urltoplugin" ] >
[ <jsp:params>
][ <jsp:param name="parametername"
value="{parametervalue | <%= expression %>}" /> ]+
</jsp:params> ]
[ <jsp:fallback> text message for user </jsp:fallback> ]
</jsp:plugin>
type="bean | applet"
.将被执行的插件对象的类型,你必须得指定这个是bean还是applet,因为这个属性没有缺省值.
code="classfilename"
将会被java插件执行的java class的名字,必须以.class结尾。这个文件必须存在于codebase属性指定的目录中.
codebase="classfiledirectoryname"
将会被执行的java class文件的目录(或者是路径),如果你没有提供此属性,那么使用<jsp:plugin>的jsp文件的目录将会被使用.
name="instancename"
这个bean或applet实例的名字,它将会在jsp其它的地方调用.
archive="uritoarchive, ..."
一些由逗号分开的路径名,这些路径名用于预装一些将要使用的class,这会提高applet的性能.
align="bottom | top | middle | left | right"
图形,对象,applet的位置,有以下值:
bottom
top
middle
left
right
height="displaypixels" width="displaypixels"
applet或bean将要显示的长宽的值,此值为数字,单位为象素.
hspace="leftrightpixels" vspace="topbottompixels"
applet或bean显示时在屏幕左右,上下所需留下的空间,单位为象素.
jreversion="jreversionnumber | 1.1"
applet或bean运行所需的java runtime environment (jre) 的版本.
缺省值是 1.1.
nspluginurl="urltoplugin"
netscape navigator用户能够使用的jre的下载地址,此值为一个标准的url,如http://www.aspcn.com/jsp
iepluginurl="urltoplugin"
ie用户能够使用的jre的下载地址,此值为一个标准的url,如http://www.aspcn.com/jsp
<jsp:params> [ <jsp:param name="parametername"
value="{parametervalue | <%= expression %>}" /> ]+ </jsp:params>
你需要向applet或bean传送的参数或参数值。
<jsp:fallback> text message for user </jsp:fallback>
一段文字用于java
插件不能启动时显示给用户的,如果插件能够启动而applet或bean不能,那么浏览器会有一个出错信息弹出.
示例:
先将下面java程序通过编译后生成类的字节码文件(.class文件)
import java.applet.*;
import java.awt.*;
public class GraphApplet extends Applet {
double f(double x){
return (Math.cos(x/5)+Math.sin(x/7)+2)*getSize().height/4;
}
public void paint(Graphics g){
for(int x=0;x<getSize().width;x++){
g.setColor(Color.RED);
g.drawLine(x, (int)f(x), x+1, (int)f(x+1));
}
}
public String getAppletInfo(){
return "Draw a sin graph.";
}
}
再和下面的JSP文件(testApplet.jsp)一同复制到tomcat安装目录的webapps\testAppletdemo下:
<%@ page contentType="text/html;charset=GBK"%>
<html>
<body>
本页面包含对象Java Applet:GraphApplet
<P/>
<jsp:plugin code="GraphApplet" codebase="." type="applet" width="400" height="110">
<jsp:fallback>
<p>浏览器不支持Applet的显示</p>
</jsp:fallback>
</jsp:plugin>
</body>
</html>
(此jsp页面使用<jsp:plugin>来包含Java Applet对象GraphicApplet)
在浏览器输入URL:
http://localhost:8080/testApplet/demo/testApplet.jsp便可以得到运行结果:
(参考互联网资料及《动态网页开发技术》)