Код: Выделить всё
CompletableFuture.supplyAsync(this::makeHttpCall);
Код: Выделить всё
public static String makeHttpCall () {
OkHttpClient client = new OkHttpClient.Builder().build();
Request request = new Request.Builder()
.url("https://example.com/api/v1")
.build();
try (Response response = client.newCall(request).execute()) {
String body = "";
if (response.body() != null) {
body = response.body().string();
}
return body;
} catch (Exception e) {
log.error(e.getMessage());
return null;
}
}
Код: Выделить всё
java.security.AccessControlException: access denied ("java.net.SocketPermission" "example.com" "resolve")
Код: Выделить всё
java.security.AccessControlException: access denied ("java.util.PropertyPermission" "os.arch" "read")
Менеджер безопасности имеет устарел с версии JDK 17 и помечен для удаления. Tomcat по-прежнему добавляет политику безопасности через файл catalina.policy, который считывается JVM при запуске сервера Tomcat.
Какими должны быть идеальные политики в файле catalina.policy, чтобы избежать этих разрешений Исключения?
Подробнее здесь: https://stackoverflow.com/questions/789 ... 1-where-se