2017-09-28 5 views
0

Je possède ce fichier de mappage:indexation avec plusieurs types de cartographie

{ 
    "type1": { 
    "properties": { 
     "id": { 
     "type": "string", 
     "index": "not_analyzed" 
     } 
    }, 
    "type2": { 
    "properties": { 
     "id": { 
     "type": "string", 
     "index": "not_analyzed" 
     } 
    } 
    } 
} 

Et mes classes qui utilisent cette application:

@Document(indexName = "cake", type = "type1") 
@Mapping(mappingPath = "/elasticsearch/config/mappings.json") 
public class TypeOneElasticEntity implements Serializable { 
} 

@Document(indexName = "cake", type = "type2") 
@Mapping(mappingPath = "/elasticsearch/config/mappings.json") 
public class TypeTwoElasticEntity implements Serializable { 
} 

Le problème est que quand je veux index TypeTwoElasticEntity, je reçois ce erreur:
Définition de mappage racine a paramètres non pris en charge "type1"
Je suppose que je dois utiliser un deuxième fichier. Mais est-il possible de mettre plusieurs types dans un fichier dans cette situation?

Merci!

Répondre

1

Non, un index type a un mappage. Toutefois, le index types ne sera plus pris en charge et deviendra obsolète. Si vous avez plusieurs mappages, vous devez créer un index séparé pour chacun.

+0

Merci pour l'explication :) – Anna