📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 8.2-8.2

简而言之,当 GeoJSON 对象中的 ‘type’ 字段不是字符串时,就会发生此错误。GeoJSON 是一种用于编码地理数据结构的格式。‘type’ 字段是必填的,并且应该是一个字符串,用于指示 GeoJSON 对象的类型(例如 “Point”、“Polygon”)。要解决此问题,请确保 ‘type’ 字段是字符串。如果你是通过编程方式生成 GeoJSON,请检查你的代码以确保它正确格式化了 ‘type’ 字段。如果你是手动创建 GeoJSON,请确保你正确地将 ‘type’ 字段输入为字符串。

日志上下文 #

日志 “GeoJSON ‘type’ must be a string” 的类名是 GeoUtils.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人使用:

}
 } else if (TYPE.equals(field)) {
     if (subParser.currentToken() == Token.VALUE_STRING) {
         geojsonType = subParser.text();
     } else {
         throw new ElasticsearchParseException("GeoJSON 'type' must be a string");
     }
 } else {
     throw new ElasticsearchParseException(
         "field must be either [{}]; [{}]; [{}]; [{}] or [{}]";
     LATITUDE;