Java Applet问题与Mozilla Firefox&谷歌Chrome浏览器

时间:2011-10-10 07:36:42

标签: java applet

当我在同一个浏览器上运行两个Java Applet实例时,一个Applet的内容会显示在另一个Applet上。

我发现这种行为的原因是由于使用了数据显示中涉及的静态变量。

问题在于Mozilla FireFox&谷歌浏览器浏览器,而它与Internet Explorer一起工作正常。

我需要在类之间共享一个变量来显示/操作数据。

我应该采取什么方法来防止使用静态变量,或者以这种方式共享变量,以便解决上述问题?

提前致谢。

CB

1 个答案:

答案 0 :(得分:3)

此行为是正确的,并在文档(标题为“类加载器缓存和Applet之间的交互”一节)中明确说明: http://download.oracle.com/javase/6/docs/technotes/guides/jweb/applet/applet_execution.html

(微软打破这一事实可能并不令人意外)

如该文档中所述,您可以关闭类加载器缓存以通过以下方式阻止此操作:

  

新插件提供了一种基于applet选择不在applet上使用类加载器缓存的方法。

<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300">
    <PARAM name="classloader_cache" value="false">
</APPLET>
  

classloader_cache参数的默认值为true;默认情况下启用类加载器缓存。