URL url = //...
if(url.getProtocol().equals("file"))) {
String path = url.getFile().replace('/', File.separatorChar);
path = ParseUtil.decode(path);
if (path.endsWith(File.separator)){
path += "-";
}
p = new FilePermission(path, SecurityConstants.FILE_READ_ACTION);
}
Я сомневаюсь, что этот код делает что-нибудь полезное вообще.Конечно, любой код, который выполняет операцию replace (), является подозрительным.Попробуйте новый файл (url.toURI ()). GetPath () или .getAbsolutePath ().
Следующий вопрос: что он думает по поводу создания разрешения?Это вас никуда не приведет.Менеджер безопасности сделает это сам, когда это необходимо, проверит полученное разрешение и при необходимости выдаст исключение SecurityException.Создание разрешения самостоятельно не дает вам этого разрешения.