我在ElasticSearch如何插入對象數組中elasticsearch
{
"uuid" : 0,
"StatusHistoryList" : [
{
"ArtWorkDate" : "2015-08-25T16:29:32.011+05:00",
"ArtworkStatus" : "ACTIVE"
}
]
}
我正在通過代碼添加這一點,但在添加此陣列領域StatusHistoryList
有問題,我這樣做是這樣
var xb:XContentBuilder=XContentFactory.jsonBuilder().startObject()
.field("uuid",artWork.getUuid)
xb.startArray("StatusHistoryList")
for(h<-history)
{
var date=h.date.toString()
var artworkStatus=h.artworkStatus.toString
xb.startObject()
xb.field("ArtWorkDate",date)
xb.field("ArtworkStatus",artworkStatus)
xb.endObject()
}
xb.endArray()
xb.endObject()
val bulkRequest=client.prepareBulk()
bulkRequest.add(client.prepareIndex("arteciatedb","artWork",artWork.uuid.toString())
.setSource(xb)
)
val bulkResponse =bulkRequest.execute().actionGet()
if(bulkResponse.hasFailures())
{
log.error("something is wrong here ")
}}
有文件它是印刷
something is wrong here
請幫我在控制檯上
我在哪裏做錯了
UPDATE 通過尼莫這裏的答案後打印在控制檯輸出
controller ERROR - failed to executefailure in bulk execution:
[0]: index [arteciatedb], type [artWork], id [0], message [MapperParsingException[failed to parse [StatusHistoryList]]; nested: ElasticsearchIllegalArgumentException[unknown property [ArtWorkDate]]; ]
你是否從'bulkResponse'獲得了更精確的錯誤信息? –