Как я могу вместо этого «перейти на модель безопасности Java 2»? - PullRequest
1 голос
/ 29 ноября 2010

Я использую апплет JAVA, который загружает файлы из браузера с помощью перетаскивания. Я знаю, что это подписанный апплет. Вчера я загрузил несколько файлов, но сегодня выдает ошибку в консоли:

Netscape security model is no longer supported. 
Please migrate to the Java 2 security model instead

Я никогда не обновляю JRE. Я почти уверен, что java-версия всегда была 1.6.0_22.
Возможно ли это?

Я не программист на Java, но я должен отредактировать код, чтобы позволить апплету работать. Этот апплет просто получает доступ к файловой системе, чтобы создать папку, изменить размер некоторого изображения в этой папке и загрузить изображения с измененным размером и связаться с JS для отправки некоторых сообщений на веб-страницу.

Я нашел только этот код, связанный с безопасностью:

import netscape.security.PrivilegeManager;
import java.text.DateFormat;
import java.security.AccessController;
import java.security.PrivilegedExceptionAction;
import java.security.PrivilegedActionException;

public void init() {
    try {
        netscape.security.PrivilegeManager.enablePrivilege("UniversalJavaPermissions");
        ...
    } catch (JSException e1) {
        ...
    }
}

И я нашел в файле readme, как подписать скомпилированный апплет:

keytool -export -alias signFiles -file myCert.crt -storepass mypass
javac -cp C:\Programmi\Java\jdk1.6.0_18\jre\lib\plugin.jar; .\MyApplet.java -Xlint:unchecked
jar -cvf MyApplet.jar test
jarsigner MyApplet.jar signFiles

Можете ли вы дать некоторые отзывы о ресурсах, которые могут помочь мне понять, как перейти на "модель безопасности Java 2"?

Существует ли простой способ избежать этой ошибки без редактирования и перекомпиляции исходного кода (например, для принудительного использования старой модели безопасности)?

Любая идея, которая может помочь мне решить проблему, очень ценится

1 Ответ

1 голос
/ 30 ноября 2010

netscape.security.PrivilegeManager.enablePrivilege ("UniversalJavaPermissions");

Просто удалите это и следуйте инструкциям для подписи апплета.

...