Based on Spring Data Redis guide, and having the following defined:
Model
@RedisHash("positions")
public class Position {
@Id
private String id;
@GeoIndexed
private Point coordinates;
//...
}
Connection
@Configuration
public class RedisConfig {
@Bean
public RedisConnectionFactory lettuceConnectionFactory() {
return new LettuceConnectionFactory("localhost", 6379);
}
@Bean
public RedisTemplate<String, Position> redisTemplate() {
final RedisTemplate<String, Position> template = new RedisTemplate<String, Position>();
template.setConnectionFactory(lettuceConnectionFactory());
return template;
}
}
I want to query for positions by its coordinates, that is why I defined the following repository:
Repository
public interface PositionRepository extends CrudRepository<Position, String> {
List<Position> findByCoordinates(Point point);
//...
}
but calling that method results in org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [org.springframework.data.geo.Point] to type [byte[]]
How can I define/implement that query?