我正在编写一个Java Applet,需要列出服务器目录中的ZIP文件,并让用户选择要加载的ZIP文件。
我阅读文件的方式:
java.io.File
对象来保存该ZIP文件java.util.zip.ZipFile
读取我解决此问题的第一种方法是在服务器中的applet jar文件的同一目录中创建一个文件夹,然后将那些ZIP文件放在那里。
此展示位置类似于diagram的a.gif。
起初我试图读取整个目录并收到错误。
在网络上我发现applet没有这个功能,所以我试图只读取一个特定的文件,但不知何故,仍然有错误。
我尝试谷歌解决问题,似乎服务器上的java.io.File
类读取文件存在问题。所以我采取了不同的方法。
我尝试的第二种方法是启动FTP服务,允许该applet获取这些ZIP文件。
我使用Apache Commons Net来处理FTP。
小程序能够连接到FTP服务器但是当调用FTPClient.listFile()
时,日志显示错误。
我知道Sandboxed Applet存在很多限制,但是从Oracle's document来看,Sandboxed Applet似乎应该能够从源自它的服务器中检索资源,所以我非常很困惑我如何从我的未签名小程序中读取ZIP文件的文件夹。此外,如果你们有更好的方法来解决这个问题,那将是很好的。
仅供参考,服务器运行Windows Server 2003,我使用JDK 6开发applet。