我最近收到一位客户的电子邮件,说他们在我们的某个网络应用上收到了错误消息。我们有一个日期/时间选择器小程序,它在整个应用程序中使用,并且不会显示给该用户。 HTML页面中的标记是:
<APPLET CODE="com.enerwise.applet.datetime.DateTimeSelector" WIDTH=250 HEIGHT=30 codebase="/japps" name="app_date_start" align="middle" archive="DateTimeSelector.jar,VisualSoftJBCalendar.jar">
<PARAM NAME="locale" VALUE= "en_US" ><PARAM NAME="interval" VALUE= "-1" >
</APPLET>
他在ClassNotFoundException
报告的错误为com.enerwise.applet.datetime.DateTimeSelector
。他试图从他办公室的几台不同的计算机访问该页面并得到同样的错误。他安装了Java 1.7(applet很旧;可能用1.4编译),并尝试过Win XP / IE8和Win 7 / IE9机器。我已经尝试过使用java 1.7的Win XP / IE8和Win 7 / IE9机器,没有问题。
他是唯一一个遇到此问题的客户(我知道)。我很难过!我建议他试试一台不在他工作网络上的电脑;我还没有得到答复。
有人可以建议检查他的系统吗?我找到了另一个thread,其中问题是Java控制台中的用户代理设置。我也让他检查一下。
他公司的IT部门是否有可能。改变了他们的安全性,它阻止了applets / jar文件?在这种情况下,他会收到ClassNotFound
消息吗?
答案 0 :(得分:1)
java applet的JAR文件由浏览器下载,就像任何其他文件一样。您应该能够创建这些JAR的URL,并要求用户在浏览器中输入它们,看看它们是否已下载。
例如,如果您的applet嵌入在
可访问的页面中http://yoursite.com/some/page.html
那么JAR URL(在你的情况下)应该是这样的:
http://yoursite.com/japps/DateTimeSelector.jar
http://yoursite.com/japps/VisualSoftJBCalendar.jar
(您拥有/japps
代码中指定的applet
代码库。
让您的用户在浏览器中输入它们,如果它们不下载,则是公司防火墙,或者它们在Web服务器上实际丢失。