У меня есть Java-апплет, вставленный на простую HTML-страницу, расположенную по адресу http: // localhost: 8080 / index.html :
У Java-апплета есть метод, похожий на код ниже:
public void PostStuffToServer() {
String server = "http://localhost:8080/PostHandler.ashx";
URL u = new URL(server);
URLConnection con = u.openConnection();
con.setDoOutput(true);
con.getOutputStream().write(stream.toByteArray());
con.connect();
}
Когда я выполняю код апплета из JavaScript следующим образом:
obj = document.getElementById('applet');
obj.getClipboardImageURL();
, я получаю следующую ошибку:
доступ запрещен (java.net.SocketPermission 127.0.0.1:8080 подключение, разрешение)
Похоже, что код Java разрешает домен localhost в его эквивалентный IP-адрес и, следовательно, повышает междоменную безопасность. Он отлично работает, когда я выполняю тот же код из http://127.0.0.1:8080/index.html . Файл lib.jar подписан.
Есть ли способ избежать этого?