Webkit在从JAR读取之前尝试下载Java applet类

时间:2012-12-21 11:24:52

标签: java html5 applet

我正在嵌入这样的Java applet:

<object type="application/x-java-applet">
  <param name="codebase" value="/path/to/jar" />
  <param name="archive" value="myapplet.jar" />' +
  <param name="code" value="my.package.MyClass" />
</object>

小程序在所有浏览器中都能正常运行,但Webkit浏览器(Chrome和Safari)都在烦恼服务器,并且无用的请求试图从服务器下载MyClass文件(在JAR中并且从那里工作正常):

Chrome在控制台中显示此错误:

GET http://localhost/test/my.package.MyClass 404 (Not Found) 

使用<embed>代码而不是<object>时会发生同样的情况,但使用已弃用的<applet>代码时不会发生这种情况。

是否有可能以某种方式阻止此类文件下载?我听说有关codebase_lookup参数的传闻,但将此参数设置为false并没有改变任何内容。

1 个答案:

答案 0 :(得分:2)

我发现在 param 标记中设置了applet的代码参数时会出现此问题。如果将其移至相应的对象的属性,则不再显示404错误:

<object type="application/x-java-applet" code="my.package.MyClass">
   <param name="codebase" value="/path/to/jar" />
   <param name="archive" value="myapplet.jar" />
</object>

经过测试:

Windows 8,Java 1.7.0_25:Chrome 28,Firefox 23,IE10

OS X 10.6.8,Java 1.6.0_51:Chrome 28,Firefox 23,Safari 5.1.9

OS X 10.7.5,Java 1.7.0_25:Firefox 23,Safari 6.0.5

OS X 10.8.4,Java 1.7.0.25:Firefox 23,Safari 6.0.5

OS X 10.9,Java 1.7.0_25,Firefox 23,Safari 7.0