`

applet notinited的解决方案

 
阅读更多

最近项目当中正好使用到了applet,这个很少接触过的东东。

大体是在页面当中使用一个applet生成一个文本文件。

 

奇怪的是页面一直报错。

 

java.lang.ClassNotFoundException: framework.applet.FileUtil.class

at sun.applet.AppletClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.applet.AppletClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.applet.AppletClassLoader.loadCode(Unknown Source)

at sun.applet.AppletPanel.createApplet(Unknown Source)

at sun.plugin.AppletViewer.createApplet(Unknown Source)

at sun.applet.AppletPanel.runLoader(Unknown Source)

at sun.applet.AppletPanel.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Caused by: java.io.IOException: open HTTP connection failed.

at sun.applet.AppletClassLoader.getBytes(Unknown Source)

at sun.applet.AppletClassLoader.access$100(Unknown Source)

at sun.applet.AppletClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

... 10 more


applet在页面的配置如下
<Applet width="0" height="0" id="TestApplet"
	code="framework.applet.FileUtil.class"
	codebase="/jsp/lms/wms/sorting/grandIntfTask/" >
</Applet>
 
class文件放置路径如下
--jsp
       --lms
                --wms
                          --sorting 
                                        --grandIntfTask
                                                                 --framework
                                                                                     --applet
                                                                                                   FileUtil.class

从路径上来看并没有发现问题。


上网搜索了很多资料,说法有很多。

一种说法是可能由于JDK自动升级导致,编译applet的版本和升级后的版本冲突,建议在控制面板中删除新升级的版本。

还有一种说法是如果该applet引用了其他的第三方工具类,必须和第三方工具类一起打jar包,再使用签名来实现。


使用这两种方法都没能解决上述问题。


最后无意中发现了问题所在。

在IE中调出java控制面板。将跟踪级别调高。观察日志。

etwork: 未找到高速缓存项 [url: http://localhost:8088/jsp/lms/wms/sorting/grandIntfTask/framework/applet/FileUtil.class,版本: null]
network: 正在使用代理 DIRECT 连接 http://localhost:8088/jsp/lms/wms/sorting/grandIntfTask/framework/applet/FileUtil.class
network: 未找到高速缓存项 [url: http://localhost:8088/jsp/lms/wms/sorting/grandIntfTask/framework/applet/FileUtil/class.class,版本: null]
network: 正在使用代理 DIRECT 连接 http://localhost:8088/jsp/lms/wms/sorting/grandIntfTask/framework/applet/FileUtil/class.class

可以看到applet的地址明显是错误的,路径中没有包括服务名


修改后的代码如下
<Applet width="0" height="0" id="TestApplet"
	code="framework.applet.FileUtil.class"
	codebase="<%=request.getContextPath() %>/jsp/lms/wms/sorting/grandIntfTask/">
	
</Applet>
 

在前面加入contextPath,问题顺利解决。

IE版本:8.0
JRE版本:1.6



 

分享到:
评论

相关推荐

    Applet

    Java Applet是Java技术在早期为了实现网页动态交互而提出的一种技术。Applet是一段用Java语言编写的代码,能够在用户的浏览器环境下运行,为用户提供动态的、交互式的Web内容。与传统的Java Application不同,Applet...

    Java Applet 入门教程

    - Java Web Start和JavaFX提供更现代的解决方案,但仍基于Java,但不依赖于浏览器环境。 7. **学习资源** - "Java Applet 入门教程" 和 "Java Applet 入门" 这两个文件名可能包含详细的步骤和示例,帮助初学者...

    Applet小游戏 Applet小游戏 Applet小游戏

    Applet是Java类的子类,通常是`java.applet.Applet`或其子类,如`javax.swing.JApplet`。它们通过`&lt;applet&gt;`标签或者`&lt;object&gt;`标签在HTML页面中被引用,从而在客户端(用户的浏览器)中执行。Applet的生命週期包括...

    关于 js 和 applet 相互调用的例子

    现代Web开发倾向于使用WebAssembly、Web Components或者框架如React、Vue等,它们提供更现代、更安全的解决方案来实现类似的功能。尽管如此,理解JS与Applet的交互仍然是了解Web历史和技术演进的一个重要环节。

    做一个applet测试

    在网页上运行Applet小程序是一种早期的Web交互技术,它允许Java代码在浏览器中执行,提供了一种跨平台的解决方案。本文将深入探讨如何创建和实现一个能够提示用户下载插件的Applet。 首先,我们要了解什么是Applet...

    applet中文乱码问题的解决.txt

    ### Applet中文乱码问题解析及解决方案 #### 一、问题背景 在早期的Web开发中,Applet作为Java的一项关键技术被广泛应用于浏览器插件开发之中。然而,在使用Applet时,开发者经常会遇到中文显示乱码的问题。这个...

    Applet程序,含有未解决的问题

    标题中的“Applet程序,含有未解决的问题”可能指的是开发者在编写或运行Applet时遇到了一些困难,这些问题可能涵盖多个方面,包括但不限于以下几点: 1. **安全性问题**:由于Applet运行在用户的机器上,因此对...

    applet截取屏幕图片

    在实际应用中,你可能需要寻找其他解决方案,例如使用JavaScript库如html2canvas或者基于WebRTC的解决方案。 总结起来,Java Applet曾经是实现客户端交互功能的一种方式,包括屏幕截图。然而,随着技术的发展,更...

    java的applet实例

    Java的Applet实例是Java编程领域中的一个基础概念,它主要涉及到Web应用程序的早期开发技术。Applet是一种在客户端浏览器中运行的小型Java程序,它能够增强网页的交互性,提供动态内容展示。在Java的发展历程中,...

    一个Applet小例子

    Applet是Java编程语言中的一种特殊类型,它允许在网页中嵌入小型的...然而,由于现代浏览器逐渐弃用了Applet技术,现在更常见的是使用Java Web Start或完全基于Web的解决方案,如JavaScript和WebGL来实现类似的功能。

    win7 ie9版本下applet的安装和使用

    - **解决方案**:检查Applet来源是否可信;确认是否已添加信任站点;如果仍然出现问题,可尝试调整IE的安全设置,允许加载未签名的Applet。 - **问题3**:Applet运行不稳定或频繁崩溃。 - **解决方案**:检查JRE...

    Applet整合到web环境

    以下是一些解决方案: 1. **设置正确的类路径**:确保包含Applet及其依赖的所有JAR文件都在Web应用的WEB-INF/lib目录下。这样,当Applet被加载时,Web服务器会自动将其包含在类路径中。 2. **使用标签**:在HTML的...

    Applet与Servlet之间的通信与交互

    而对于复杂的业务逻辑,Java对象序列化则是一种有效的解决方案。 在实现这些通信方式时,还需要注意以下几点: - **安全**:由于Applet运行在客户端,所以必须确保所有的通信都是安全的,避免敏感信息泄露。 - **...

    jasperreports-applet-5.1.0.jar

    总结,JasperReports Applet 5.1.0是JasperReports在Web环境下的一种创新尝试,它通过applet技术实现了报表的在线打印,为开发者提供了更灵活的报表展示方案。理解并掌握这个特性,有助于提升Web应用的报表功能,为...

    在Java Applet中实现动画.rar_applet_java Applet

    Java Applet是Java技术在Web浏览器中运行的一种小程序,它为网页添加了交互性和动态性。本教程将探讨如何在Java Applet中实现动画效果,让网页内容更加生动有趣。 首先,理解动画的基本原理至关重要。动画是通过...

    js与applet的相互调用资源包

    JavaScript(简称JS)和Applet是两种在Web开发中用于增强网页交互性的技术。JavaScript是一种轻量级的脚本语言,通常运行在浏览器端,负责处理用户交互、动态内容更新等任务。Applet则是Java的一个早期特性,允许...

    applet屏幕截图程序

    【applet屏幕截图程序】是一种基于Java编程语言开发的小型应用程序,它被设计为一个可嵌入网页的组件,能够实现在用户浏览器中执行屏幕截图的功能...现代的解决方案更倾向于使用纯前端技术或者Web服务来实现类似功能。

    JavaApplet_javaapplet小程序_java_

    六、JavaApplet的局限性与替代方案 随着Web技术的发展,JavaApplet逐渐失去了市场份额,主要因为以下原因: 1. 安全顾虑:沙箱模型限制了Applet的功能,导致用户体验受限。 2. 浏览器兼容性问题:许多现代浏览器已...

    JavaApplet与JavaScript

    ### JavaApplet与JavaScript #### 6.1 JavaApplet ##### 6.1.1 JavaApplet概述 **Applet 类层次结构:** JavaApplet 的基础是 `java.applet.Applet` 类,它是从 `java.awt.Panel` 继承而来的一个特殊的图形组件。...

Global site tag (gtag.js) - Google Analytics