3
我正在尝试使用MongoDB的com.mongodb.client.model.geojson.Polygon
类和com.mongodb.client.model.geojson.Position
类进行地理空间查询。客户端代码在其自己的boundingBox对象中填充四个双角。为什么我会收到以下错误:无法找到类com.mongodb.client.model.geojson.Polygon的编解码器
这里是代码片段:
Polygon polygon = new Polygon(Arrays.asList(new Position(boundingBox.getRightLongitude(),boundingBox.getTopLatitude()),
new Position(boundingBox.getLeftLongitude(), boundingBox.getTopLatitude()),
new Position(boundingBox.getLeftLongitude(), boundingBox.getBottomLatitude()),
new Position(boundingBox.getRightLongitude(), boundingBox.getBottomLatitude()),
new Position(boundingBox.getRightLongitude(), boundingBox.getTopLatitude())));
//Document filter = new Document("coordinates",geoWithin("coordinates", polygon));
Block<Document> printBlock = new Block<Document>() {
@Override
public void apply(final Document document) {
System.out.println(document.toJson());
}
};
database.getCollection("roads").find(geoWithin("coordinates",polygon)).forEach(printBlock);
这里是错误:
Exception in thread "main" org.bson.codecs.configuration.CodecConfigurationException: Can't find a codec for class com.mongodb.client.model.geojson.Polygon.