Миграция ResourceProcessor на HATEOAS 1.0.0 M1

В моем текущем проекте Spring HATEOAS 0.25.1.RELEASE я активно использую Интерфейсы ResourceProcessor:

 @Bean
 public ResourceProcessor<Resource<Person>> personProcessor() {
    return new ResourceProcessor<Resource<Person>>() {
      @Override
      public Resource<Person> process(Resource<Person> resource) {
       resource.add(new Link("http://localhost:8080/people", "added-link"));
       return resource;
      }
    };
 }

Как я могу перенести свои ResourceProcessors на Spring HATEOAS 1.0.0 M1?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Версия Java на основе версии загрузки
Версия Java на основе версии загрузки
Если вы зайдете на официальный сайт Spring Boot , там представлен start.spring.io , который упрощает создание проектов Spring Boot, как показано ниже.
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
7
0
1 794
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В Spring HATEOAS 1.0 M1 многие типы и API изменили правила именования.

В вашем примере ResourceProcessor теперь RepresentationModelProcessor, а Resource<T> теперь EntityModel<T>, вот так:

public RepresentationModelProcessor<EntityModel<Person>> personProcessor() {
return new RepresentationModelProcessor<EntityModel<Person>>() {
  @Override
  public EntityModel<Person> process(EntityModel<Person> entityModel) {
    entityModel.add(new Link("http://localhost:8080/people", "added-link"));
    return entityModel;
  }
};

}

См. полные примечания к изменениям здесь.

Спасибо за быстрый ответ. Вы нашли какую-либо документацию, касающуюся этого, в частности?

Sebastian Ullrich 14.05.2019 16:45

Однако похоже, что это отсутствует в документации, так что спасибо за это!

aorticDefiance 01.11.2019 08:27

Другие вопросы по теме