Bonjour,
J'ai un flux JSON que je souhaite lire mais j'ai l'erreur suivante :
My error : 2018-12-19 23:05:34.891 WARN 1432 --- [io-8080-exec-31] .c.j.MappingJackson2HttpMessageConverter : Failed to evaluate Jackson deserialization for type [[simple type, class fr.model.Utilisateur]]: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot handle managed/back reference 'defaultReference': back reference type (java.util.List) not compatible with managed type (fr.model.MenuAction)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 public class Utilisateur implements Serializable { private static final long serialVersionUID = 1L; @Id private Integer id; private Integer fixe; private Boolean deleted; private Boolean actif; private String email; private Integer mobile; private String motDePasse; private String nom; private String prenom; @ManyToMany private List<Profil> profils = new ArrayList<Profil>(); public Utilisateur() { } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 public class Profil implements Serializable { private static final long serialVersionUID = 1L; @Id private Integer id; private String codeProfil; private String libelleProfil; @JsonManagedReference @ManyToMany private List<MenuAction> menuActions = new ArrayList<MenuAction>(); public Profil() { } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 public class MenuAction implements Serializable { private static final long serialVersionUID = 1L; @Id private Integer id; private String codeMenuAction; private Boolean deleted; private String libelleMenuAction; @ManyToOne @JoinColumn(name="idMenuActionParent") private MenuAction menuAction; @JsonManagedReference @ManyToOne private Menu menu; @JsonBackReference @ManyToMany private List<Profil> profils = new ArrayList<Profil>(); @OneToMany(mappedBy="menuAction") private List<MenuActionOperation> menuActionsUrl = new ArrayList<MenuActionOperation>(); public MenuAction() { } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 public class Menu implements Serializable { private static final long serialVersionUID = 1L; @Id private Integer id; private String codeMenu; private Boolean deleted; private String libelleMenu; @ManyToOne @JoinColumn(name="idMenuParent") private Menu menu; @JsonBackReference @OneToMany(mappedBy="menu") private List<MenuAction> menuActions = new ArrayList<MenuAction>(); public Menu() { } }
Partager