Разрешения сервера сокета Java-апплета

1
  • Я хочу создать апплет Java, который функционирует как сервер сокетов (локальная сеть ips или диапазон 127 - это хорошо).
  • Я хочу, чтобы этот апплет запускался на веб-странице.
  • браузер может идеально загрузить веб-страницу из файловой системы (файл://...), но при необходимости я смогу установить HTTP-сервер.
  • Апплет должен иметь возможность взаимодействовать с JavaScript.

У меня проблемы со всеми документами. Возможно ли это? Я не знаком с моделью безопасности Java. Если мне нужно подписать апплет или установить некоторые специальные настройки безопасности или конфигурации, это прекрасно.

edit- В случае любопытства, апплет делает очень мало. Я просто хочу использовать его в качестве моста, чтобы другая программа, работающая на локальном компьютере, могла связываться через сокеты. Эта программа поставляет значения, которые javascript будет использовать для обновления ui в режиме реального времени. Ui сложный, и построение его в html/javascript будет огромной экономии времени. Я бы предпочел, чтобы функция апплета была сервером сокета, противоположным клиенту сокета, потому что в противном случае мне нужно написать отдельную программу, чтобы действовать как сервер между апплетом и другой программой.

  • 0
    Что делает апплет, и почему взаимодействие JS?
  • 0
    @andrew, см. правку
Показать ещё 2 комментария
Теги:
security
sockets
applet

1 ответ

1
Лучший ответ

Возможно ли это?

Конечно. Если вы контролируете файлы безопасности/политики для этого апплета и брандмауэра, это одноразовая сделка, это должно быть выполнимо. Возможно, вам придется обернуть некоторые из методов апплета в PrivilegedAction если они вызваны из JS.

  • 0
    просто хотел убедиться, что это работает на Windows (я завернул в PrivilegedAction), хотя в Linux это действовало как мои правки в файле политики не было. Я уверен, что правильный файл политики был отредактирован, так как его местоположение было найдено через консоль java в браузере. Ну что ж. Я только что установил веб-сервер и запросил файл через http вместо того, чтобы загружать его через протокол file: //, чтобы изменения политики не требовались, и теперь все в порядке.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню