Разблокируемый метод в Java - PullRequest
0 голосов
/ 04 ноября 2019

IntelliJ говорит: неадекватный вызов метода блокировки

Как я могу реорганизовать этот метод, чтобы передать этот стандарт?

public List<User> getAllUsers(String name) {
        Type userList = new TypeToken<List<User>>() {
        }.getType();

        try {
            RestTemplate restTemplate = new RestTemplate();
            ResponseEntity<String> responseEntity
                    = restTemplate.getForEntity(host, String.class);
            Gson gson = new GsonBuilder().create();


            List<User> users = gson.fromJson(responseEntity.getBody(), userList );

            return users == null ? new ArrayList<>() : users;

        } catch (HttpClientErrorException | HttpServerErrorException e) {
            return new ArrayList<>();
        }
    }

1 Ответ

1 голос
/ 04 ноября 2019

IntelliJ предупреждает вас, потому что вы используете WebFlux, который не блокирует, а также RestTemplate, который блокирует. Вместо этого вам следует переключиться на WebClient , что является новым неблокирующим способом.

...