Как удалить 'uriTemplate' из ссылок при использовании Spring HATEOAS - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь реализовать HAL и нумерацию страниц с использованием библиотек Hateoas и Spring Data в существующем проекте Spring. Все работает, как и ожидалось, за исключением того, что все ссылки показывают ключ под названием «uriTemplate», который я никогда не видел в онлайн-примерах. Пример ответа можно найти ниже:

{
    "_links": {
        "self": {
            "href": "http://localhost:8080/my-service/v2/library/300000000001/books?page=0",
            "uriTemplate": {
                "variables": [],
                "baseUri": "http://localhost:8080/cm-contactpoints/v2/customers/300000000001/phones?page=0&size=1",
                "variableNames": [],
                "optionalVariables": {
                    "variables": []
                }
            }
        }
    },
    "page": {
        "size": 10,
        "totalElements": 0,
        "totalPages": 0,
        "number": 0
    }
}

Я вполне уверен, что есть какая-то конфигурация, которая вызывает это, потому что, если я создаю новый проект с нуля и использую подобный подход, тогда «uriTemplate» не отображается в ответ, что я и ожидаю увидеть. Вот метод GET от моего контроллера, если он помогает:

 @Get("")
    public ResponseEntity<PagedResources<BookResource>> get(@PathVariable("bookId") String bookId, Pageable pageable) {
        Page<Book> books = bookService.getRepository().findByBookId(bookId, pageable);
        PagedResources<BookResource> bookPageResource = pagedResourcesAssembler.toResource(books, bookResourceAssembler);
        return new ResponseEntity<>(bookPageResource, HttpStatus.OK);
    }

Любая помощь будет принята с благодарностью!

...