No se pudo escribir JSON: no se pudo deserializar; la exception anidada es

Dos models:

@Entity @Table(name="products") data class Product( @Id @GeneratedValue(strategy = GenerationType.AUTO) var id: Long = 0, var name: String = "", var price: Number = 0 ) @Entity @Table(name="users") data class User( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) var id: Long = 0, var name: String = "", var email: String = "", @OneToMany(targetEntity = Product::class) @JoinColumn(name = "user_id") var products: List<Product> = listOf() ) { var password: String = "" @JsonIgnore get() = field } 

Mi repository

 @Repository interface UserRepository : CrudRepository<User, Long> { fun findByEmail(email: String): User } 

En mi controller:

 @GetMapping("/users") fun index(): MutableIterable<User> = repository.findAll() 

Cuando accedo a http: // localhost: 8080 / users obtengo el siguiente error:

Error al escribir el post HTTP: org.springframework.http.converter.HttpMessageNotWritableException: No se pudo escribir JSON: no se pudo deserializar; la exception anidada es com.fasterxml.jackson.databind.JsonMappingException: no se pudo deserializar (a través de la cadena de reference: java.util.ArrayList [0] -> xxxxxxxxxxx.models.User ["products"])