我编写了一个应该比较文件的applet。它计算CRC32校验和,然后输出具有相同校验和的文件。
它从appletviewer和独立应用程序运行良好。所以我已经打包并签名了。 但是,当我在浏览器中启动它时,它不起作用。
它发布良好。浏览器询问此签名的权限。它显示了JFileChooser对话框,我可以选择目标文件夹。
问题在于它什么都不返回。当谈到文件迭代或校验和计算时,它似乎静静地粉碎。 (我已经使用apache.commons FileUtils进行文件迭代和校验和计算)
它可以打开.txt文件并阅读其内容。我已经在不同的浏览器,不同的安全设置,甚至在Linux上测试过它。
我试图使用“AccessController.doPrivileged”重写我的代码,因为:
@Override
public ArrayList<String> doInBackground() {
return AccessController.doPrivileged(new PrivilegedAction<ArrayList<String>>() {
public ArrayList<String> run() {...});
......它仍然无能为力。它的问题是什么?
提前致谢。
答案 0 :(得分:0)
问题是apache.commons和Guava库在applet中无法正常工作。 手工重写此代码后,最终工作。