spring rest lazy loading with hibernate spring rest lazy loading with hibernate json json

spring rest lazy loading with hibernate


Try adding the following dependancy (depending on your hibernate version):

<dependency>    <groupId>com.fasterxml.jackson.datatype</groupId>    <artifactId>jackson-datatype-hibernate5</artifactId>    <version>${jackson.version}</version></dependency>

And then (assuming you have a Java based configuration) add the following in the WebMvcConfigurerAdapter class:

@Overridepublic void configureMessageConverters(List<HttpMessageConverter<?>> converters) {    converters.add(jackson2HttpMessageConverter());}@Beanpublic MappingJackson2HttpMessageConverter jackson2HttpMessageConverter() {    MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();    converter.setObjectMapper(this.jacksonBuilder().build());    return converter;}public Jackson2ObjectMapperBuilder jacksonBuilder() {    Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();    Hibernate5Module hibernateModule = new Hibernate5Module();    hibernateModule.configure(Feature.FORCE_LAZY_LOADING, false);    builder.modules(hibernateModule);    // Spring MVC default Objectmapper configuration    builder.featuresToDisable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);    builder.featuresToDisable(MapperFeature.DEFAULT_VIEW_INCLUSION);    return builder;}

It should force the Jackson's objectMapper to not fetch lazy-loaded values.