我尝试通过jsp:plugin将applet嵌入到我的Applet.jsp中。 当我通过tomcat调用jsp时,applet抛出一个“ClassNotFoundException”。
到目前为止,我发现,当我将类路径输入url时,可以找到甚至下载jar文件。在我的tomcat-logs中,我看到,找到了test.jar,但没有找到它的MyClass.class。
我的项目结构:
webapp
- applets
- test.jar
- WEB-INF
- templates
- Applet.jsp
- web.xml
jar文件只包含MyClass.class。
Applet.jsp
<jsp:plugin type="applet" /webapp/applets/test.jar" code="MyClass.class" width="300" height="300"></jsp:plugin>
Tomcat日志
"POST /webapp/servlet/applet HTTP/1.1" 200
"GET /webapp/applets/test.jar/MyClass.class HTTP/1.1" 404
我也试过
Applet.jsp
<jsp:plugin type="applet" archive="/webapp/applets/test.jar" code="MyClass" width="300" height="300"></jsp:plugin>
和几个变种,但没有运气。
Tomcat日志
"POST /webapp/servlet/applet HTTP/1.1" 200
"GET /webapp/applets/test.jar HTTP/1.1" 200
"GET /webapp/servlet/MyClass.class HTTP/1.1" 404
版本是java 1.7,tomcat 7
为什么在test.jar中找不到MyClass.class?
修改
我想通了,这与jsp左右有关。 我的html with embeded applet-jar工作,jsp仍然失败。
HTML
<html>
<head>
<title>Time</title>
</head>
<body>
<object codetype="application/java-vm" width="300" height="300" archive="test.jar" classid="java:MyClass.class"></object>
</body>
</html>
有没有人想过为什么jsp不合作? 至少我很乐意使用jsp:plugin