我部署的 Java 小程序有问题,该小程序拒绝缓存在 jvm 的“粘性”缓存(或浏览器)中。由于某种原因,每次用户加载该小程序所在的页面时,jvm 都会从服务器重新下载 jar 文件,这会导致长时间延迟。
包含该小程序的网页是通过互联网访问的,因此根据Sun 的 Java applet 文档 http://java.sun.com/j2se/1.5.0/docs/guide/plugin/developer_guide/using_tags.html我正在使用一个<applet>
标签而不是<object>
or <embed>
tag.
任何调试或识别问题的帮助将不胜感激。
以下是我正在使用的完整小程序标签:
<applet alt="Scanning Applet failed to load" archive="scanning.jar"
code="scanning.scanlet.class" codebase="/java/" codetype="application/java"
height="30" mayscript="True" name="scanlet" width="200">
<param name="domain" value="192.168.12.23" />
<param name="publishName" value="scan_attachment" />
<param name="publishURL" value="http://192.168.12.23/draft/update/52" />
<param name="curURL" value="http://192.168.12.23/draft/edit/52" />
Your browser is unable to process the Java <APPLET> tag needed to display this applet
<br />
One solution would be to download a better web browser like
<a href="http://www.mozilla.com/firefox">Mozilla's Firefox</a>
</applet>
我遇到了同样的问题,并发现了一个需要在服务器端应用的技巧。如果 jar 的 mime 类型不正确,则它们似乎不会被缓存。请使用 application/java-archive mime 类型检查您的服务器回复。
我发现的另一个问题与特定的 jar 有关。我的存档参数列出了许多 jar,但只有少数被缓存。我发现所有罐子直到一个特定的罐子都被缓存,所有剩余的罐子根本没有被缓存。
加载小程序时,我在其 java 控制台中按了“5”,并在最后一个缓存的 jar 之后发现了此消息:cache:jar 中缺少签名条目。我仍然不知道这个文件出了什么问题,但我将该 jar 移到了存档参数列表的末尾。这“解决”了问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)