What is the problem of circular references in JSON?
This problem occurs when you have entities that are interdependent. For example, a Book entity that contains a single or a collection of authors. The Author entity contains also a single or a collection of books. It's as A -> B -> A. Because JSON, like XML, is tree based, it can't deal with that and will throw an exception.
I faced the problem of circular reference when I started using JSON. I searched the web, there were a lot of solutions for that. But they are not accepted in many cases. Because you will have to change a lot in your Models by adding annotations. Some other solutions will make your application slower, as they suggest to delete the
virtual keyword used for lazy loading.
What I suggest is to just remove the circular references, but how? You just set a single or collection of the entity
Book in the entity
Author. But you set the single or collection of the entity
Author within the
Null. Then you will have (A -> B -> Null), so there are no more circular references!