Erreur causée par : java.lang.IllegalStateException : l'objet imbriqué [niché] sous le chemin [chemin_route] n'est pas de type imbriqué. Le même code fonctionne parfaitement sur un autre pc.

GET content/_search
{
    "from": 0,
    "size": 0,
    "query": {
    "bool": {
        "must": [
            {
                "nested": {
                    "path": "path_route",
                    "query": {
                        "bool": {
                            "must": {
                                "terms": {
                                    "path_route.status": [
                                        "approved"
                                    ]
                                }
                            }
                        }
                    }
                }
            }

        ]

    }
}

}
0
Dori 11 févr. 2020 à 16:47

1 réponse

Meilleure réponse

De tels messages d'erreur ne sont pas inventés. Vous devrez vérifier que path_route est bien du type nested.

Exécutez GET content/_mapping et vérifiez qu'il ressemble à ceci :

{
  "content": {
    "mappings": {
      "doc": {
        "properties": {
          "path_route": {
            "type": "nested",         <-------
            "properties": {
              "status": {
                "type": "text"
              }
            }
          }
        }
      }
    }
  }
}

Si ce n'est pas le cas, précisez-le ainsi :

PUT /content
{
  "mappings": {
    "doc": {
      "properties": {
        "path_route": {
          "type": "nested",
          "properties": {
            "status": {
              "type": "text"
            }
          }
        }
      }
    }
  }
}
0
Joe Sorocin 11 févr. 2020 à 14:18