2010-12-15 62 views
1

为了举例说明,假设我在网站上有一系列位置,并且网址的形式为/ location /#/,其中#是我想要查看的位置的ID。由于我在Apache中使用Django,所有静态内容都在/ media中。每个位置页面都试图加载允许文件上传的Java小程序。Applet jar无法搜索文件

<applet 
    codebase="/media/java/" 
    code="com.elementit.JavaPowUpload.Manager" 
    archive="JavaPowUpload.jar, commons-logging-1.1.jar, commons-httpclient-3.1-rc1.jar, commons-codec-1.3.jar" 
    width="200" 
    height="100" 
    name="java-uploader" 
    id="id-java-uploader" 
    mayscript="true" 
    alt="JavaPowUpload by www.element-it.com"></applet> 

所有列出的jar文件位于/ media/java /中,并且由Web服务器找到。小程序似乎在页面上加载时没有问题,但是在页面加载期间查看网络流量时,我发现存在几个错误。基本上applet似乎在查找jar中的文件,比如说com.elementit.JavaPowUpload.Messages_en.class,但是要求Web服务器提供这些文件,这相当于请求/ media/java/com/elementit/JavaPowUpload/Messages_en.class,当然不存在。请注意,如果我摆脱了代码库并给出了每个jar的完整路径,我仍然有类似的问题,那么请求是/location/#/com/elementit/JavaPowUpload/Messages_en.class。我该如何设置,以便搜索jar文件而不是文件系统?

回答

0

尽管从另一个服务器上的其他页面获取此代码,但看起来applet的代码属性中存在轻微错误。将.class添加到字符串解决了我的问题,但我不确定为什么它在其他主机和页面上没有它。

code="com.elementit.JavaPowUpload.Manager.class" 
+0

大家都知道,JPU看起来很古怪,而不是一般的小程序。在更新到新版本时,我必须删除.class才能使其工作。 – 2011-02-07 19:42:33

1

查看codebase_lookup applet属性。

+0

感谢那个属性上的指针,之前没有遇到它。看起来,这是为了当搜索需要扩展到jar档案之外时,在我的情况下文件*在jar中。 – 2010-12-16 14:47:23