java - Spring Data Rest + RestTemplate ne peuvent pas obtenir la collecte de données lors de la création d'un service de lecture et d'écriture de données
过去多啦不再A梦
过去多啦不再A梦 2017-06-12 09:27:10
0
1
726

Client :

ParameterizedTypeReference<PagedResources<Pass>> responseType =
                new ParameterizedTypeReference<PagedResources<Pass>>() {};
PagedResources<Pass> passes =restTemplate.exchange(uri, HttpMethod.GET, null, responseType).getBody();

Serveur :

@RepositoryRestResource(collectionResourceRel = "pass", path = "pass")
public interface PassRepository extends JpaRepository<Pass,String> {
    List<Pass> findByCarPlate(@Param("carPlate")String carPlate);
}

Les données peuvent être obtenues normalement en saisissant l'URI sur la page Web, mais le résultat est vide à chaque fois. Quelqu'un sait-il comment le résoudre ?

Il n'y a aucun problème pour obtenir un seul objet, mais il y a un problème avec l'ensemble de données

过去多啦不再A梦
过去多啦不再A梦

répondre à tous(1)
世界只因有你

Laissez-moi y répondre moi-même, c'est toujours une question de configuration de RestTemplate.
Réponse sur stackoverflow

PagedResources n'a pas l'attribut _embedded, ce qui entraîne l'impossibilité d'obtenir du contenu.

objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

Cette configuration semble éliminer la fonction d'échec d'analyse si les champs ne correspondent pas, similaire à @JsonIgnoreProperties.

Je ne sais pas si je comprends bien. J'espère que quelqu'un qui comprend pourra l'expliquer.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal