Я создаю персональный инструмент, который обслуживает файлы через HTTP в Java.
Для части HTTP-сервера я использую пакет com.sun.net.httpserver.HttpServer.
Когда я подключаюсь со своего ПК с помощью локального хоста или внешнего имени хоста, это работает, но когда я пытаюсь подключиться к нему с внешнего клиента, это не так.
Я также хотел бы отметить, что файл политик java по умолчанию никогда не изменялся и что я за маршрутизатором, и что порт правильно перенаправлен.
Я попытался изменить файл политик, но у меня ничего не получилось, хотя я не знаю, были ли правильные настройки или они были применены, и я прочитал поток, в котором была похожая проблема, но с помощью rmi, который имеет была решена путем установки системного свойства java.rmi.server.hostname, но я не думаю, что это также доступно в моем случае, потому что сервер использует TCP.
Вот код, который инициализирует сервер:
Settings settings = Controller.getInstance().getModel().getSettings();
int port = settings.getHTTP_PORT();
server = HttpServer.create(new InetSocketAddress(port), 20);
String cachepath = settings.getCachepath();
if(!cachepath.startsWith("/")) cachepath = "/"+cachepath;
server.createContext(cachepath, new HTTPServerHandler());
server.start();
Если кто-нибудь из вас, ребята, может указать на то, что я могу сделать, чтобы решить эту проблему, я был бы очень признателен.