I am trying to display a List of items in JSON format. My code structure utilizing SpringBoot and JPA Repository on Server side:
- Entity class
- Repository class created
- Service written (contains repository.findAll() function)
- Controller class
Goal is to output the record set extracted from SQL database onto localhost:8080/api/getinspection.
I have added Gson dependency in my pom.xml and in my controller class added code to convert to JSON.
I get an error saying:
java.lang.UnsupportedOperationException: Attempted to serialize java.lang.Class: org.hibernate.proxy.HibernateProxy.
Forgot to register a type adapter?
I have researched on type adapter on stackoverflow and tried to implement the solution, but in vain. Please help.
Service class
public List<INSPCTN> getInspections() {
return inspctnRepository.findAll(); }
Controller Class
@Service
public class InspectionService {
@Autowired
INSPCTNRepository inspctnRepository;
@GetMapping(path="/getInspection", produces = "application/JSON")
public String getInspections() {
List<INSPCTN> list = inspectionService.getInspections();
Gson gson = new Gson();
String json = gson.toJson(list);
return json;
}
}
Expected result: List of records from the database in JSON format
Actual:
There was an unexpected error (type=Internal Server Error, status=500).
Attempted to serialize java.lang.Class: org.hibernate.proxy.HibernateProxy.
Forgot to register a type adapter?