Webkit尝试在从JAR读取Java小程序类之前下载它
我正在嵌入一个Java小程序,如下所示:Webkit尝试在从JAR读取Java小程序类之前下载它,java,html,applet,Java,Html,Applet,我正在嵌入一个Java小程序,如下所示: <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&
<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>
使用
标记而不是
时也会发生同样的情况,但使用不推荐使用的
标记时不会发生这种情况
是否有可能以某种方式阻止此类文件下载?我听说有一个
codebase\u lookup
参数,但将此参数设置为false
不会改变任何东西。我发现,当小程序的code参数设置在param标记中时,会出现此问题。如果将其移动到相应的对象的属性,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
OSX10.8.4,Java1.7.0.25:Firefox23,Safari6.0.5
OS X 10.9、Java 1.7.0_25、Firefox 23、Safari 7.0如果您能够控制应用程序,我建议您只使用不推荐的APPLET标记,因为它可以正常工作。当然,以后可能会放弃对它的支持,但在此期间,可能会出现一些更好的解决方案。当然,如果你把应用程序交给你的客户,情况会更糟。使用applet标签不是一个解决方案,而是一种变通方法。我希望得到一个答案,也许可以解释为什么Webkit试图下载类文件以及如何禁用这种行为。可能是Webkit错误,有人知道错误报告的位置,该报告包含有关此问题的更多信息。谁知道呢。是的,这是一个解决办法,不是答案。用于编写小程序/对象元素。您是否尝试使用jar://myapplet.jar!my.package.MyClass是否作为代码?我认为这应该是Jar中类的正确URL。也许,webkit会将请求放到jar://url中。我对此很不确定,所以我不想给出答案。
<object type="application/x-java-applet" code="my.package.MyClass">
<param name="codebase" value="/path/to/jar" />
<param name="archive" value="myapplet.jar" />
</object>