récemment avec ces deux DTO je suis arrivé cette erreurJackson: ne peut pas gérer géré/back référence 'defaultReference' avec DTO imbriqués
MappingJackson2HttpMessageConverter: 163 - Impossible d'évaluer Jackson désérialisation pour le type [type simple, classe seml.dto.PoiDto]: java.lang.IllegalArgumentException: Impossible de gérer les fichiers gérés/en arrière référence 'defaultReference': type de référence arrière (java.util.Set) non compatible avec le type géré (seml.dto.ConceptDto)
Comme vous pouvez le voir dans le code ci-dessous, j'ai un ensemble d'objets ConceptDto, qui ont respectivement certains ensembles d'objets ConceptDto élargis/étroits/apparentés. Certes, j'avais tort d'utiliser @ JsonManagedReference/@ JsonBackReference mais je ne comprends pas comment. Quelqu'un peut-il m'aider avec ce problème? Merci à tout le monde.
PoiDto.java
public class PoiDto extends GenericDto<String>{
private String id;
private String uri;
private String title = "";
private String description = "";
@JsonManagedReference
private Set<ConceptDto> concepts = new HashSet<ConceptDto>();
@JsonManagedReference
@JsonBackReference
private Set<PoiDto> relatedPOIs = new HashSet<PoiDto>();
private Set<ProductOrServiceDto> relatedProductOrServices = new HashSet<ProductOrServiceDto>();
[...]
ConceptDto.java
public class ConceptDto extends GenericDto<String> {
private String prefLabelIt;
private String prefLabelEn;
private String code;
private double rating;
@JsonBackReference
private Set<ConceptDto> broaders = new HashSet<ConceptDto>();
@JsonManagedReference
private Set<ConceptDto> narrowers = new HashSet<ConceptDto>();
@JsonIgnore
private Set<ConceptDto> relateds = new HashSet<ConceptDto>();
[...]
merci, vous avez sauvé mon temps ... –