我有如下的域类
class Post {
String title
String body
//common
Date dateCreated
Date lastUpdated
//Mappings
static belongsTo = [user:User]
static hasMany = [comments:Comment,tags:TagBlog]
static mapping = {
body type:"text"
}
static constraints = {
title nullable:false,blank:false
body nullable: false, blank:false
}
static searchable = {
except = 'user'
}
}
和
class Comment {
String comment
int vote
//common
Date dateCreated
Date lastUpdated
static belongsTo = [post:Post,user:User]
static mapping = { comment type:"text" }
static constraints = {
comment nullable:false,blank:false
vote nullable:true,blank:true
}
static searchable = {
except = 'user'
}
}
以下是我得到的错误
| Error 2013-05-30 00:08:15,583 [elasticsearch[index]-pool-6-thread-2] ERROR index.IndexRequestQueue - Failed bulk item: MapperParsingException[object mapping for [comment] tried to parse as object, but got EOF, has a concrete value been provided to it?]
我浏览了互联网上的许多帖子,但无法解决此问题!到目前为止,我的猜测是这可能是由于我的两个带有映射的变量造成的。type:"Text"
任何帮助将不胜感激。
我现在正在使用以下回购
mavenRepo "https://oss.sonatype.org/content/repositories/snapshots/"
mavenRepo 'https://repo.springsource.org/libs-snapshot/'
mavenRepo "http://maven.springframework.org/milestone/"
以下是在ES上打开它后得到的调试信息
2013-05-30 18:26:11,157 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - Retrieved index settings
2013-05-30 18:26:11,158 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - Installing mappings...
2013-05-30 18:26:11,163 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - Index com.ecw.wellness does not exists, initiating creation...
2013-05-30 18:26:11,163 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - Waiting at least yellow status on com.ecw.wellness ...
2013-05-30 18:28:07,884 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - Index com.ecw.wellness already exists, skip index creation.
2013-05-30 18:28:07,885 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - [com.ecw.wellness.answer] => {com.ecw.wellness.answer={properties={answer={type=string, include_in_all=true, term_vector=with_positions_offsets}, votes={type=object}, dateCreated={type=date, include_in_all=true}, lastUpdated={type=date, include_in_all=true}, question={type=object}}}}
2013-05-30 18:34:13,817 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - Index com.ecw.wellness does not exists, initiating creation...
2013-05-30 18:34:13,818 [localhost-startStop-1] DEBUG mapping.SearchableClassMappingConfigurator - Waiting at least yellow status on com.ecw.wellness ...
编辑 :
我发现了什么是原始错误:int vote
ES中的插件将原始类型(即,您的Comment域中的属性)映射为“对象”,但是该属性未序列化为对象,因此ES不知道如何处理。键入表决属性Integer vote
将使其起作用。我已经在github仓库上提出了一个问题:https : //github.com/mstein/elasticsearch-grails-
plugin/issues/61
原始答案(增强):
您正在使用哪个版本的插件?是从grails仓库还是直接从github仓库?无论如何,您是否可以尝试仅以神奇的方式出现在grails中央存储库中的插件的0.20.6.1-SNAPSHOT版本?
runtime ":elasticsearch:0.20.6.1-SNAPSHOT"
注意: 如果您没有使用该local
模式并且正在运行自己的ElasticSearch实例,请尝试匹配grails插件的版本号:0.20.6
。
另外,如果插件在使用该node
模式启动期间挂起,则可能意味着它无法自动发现ES集群。在这种情况下,请尝试使用该transport
模式。仅供参考,grails
ES插件将localhost:9300
默认使用该地址,但这是可配置的(请参阅插件文档)。
我有一个用JPA映射的简单类: 我把那门课扩展成了非常简单的课 这正是我对SponsorDefainableBo所需要的。它是Sponsor的副本,并且从与Sponsor相同的表中读取。这是我们通过一些xml文档控制的查询框架所需要的,并且需要成为我正在做的事情的单独对象。需要SponsorDefainableBo插入查询/维护框架以进行我们不想在主父文档中进行的自定义详细信息。当我尝试使用Spo
假设我有一组字符串和一个散列函数(或任何单边函数)和一个测试函数。我想用Java8流创建一个从输入字符串到通过测试函数的哈希值的映射。我的问题是如何在中编写? 看来老的for循环是最简洁的解决方案。
问题内容: 我正在创建一个需要存储键值对的程序。该程序需要接受键形式的请求,并返回相应的值。 问题在于每个键有时有多个值,并且map类不允许重复的键。 这些值是数字,因此无法像使用字符串那样有意义地连接这些值。 对于每个键可以有多个数值的事实,是否有任何优雅的解释方法?我希望返回每个数字,而不是随机返回一个数字。 问题答案: $ cat YourMap.java public class Your
在java 8中创建新代码后,我想清除声纳问题。 我的代码: 声纳说: Lambda应该替换为方法引用。方法/构造函数引用比使用lambda更紧凑和可读性,因此是首选。同样,空检查可以替换为对Object::isNull和Object::nonNull方法的引用。 我想要更改映射(arg-
我有一个BaseEntity,当我像这样制作mapper时,它有一个名为Customer的子级: Mapstruct不会自动映射BaseEntity字段。你能告诉我怎么做吗?
问题内容: 如何在GoLang中实现 MDC日志记录(Java)? 我需要在所有服务器日志中添加UUID,以便能够跟踪并发请求。 问题答案: Java MDC依赖于线程本地存储,而Go则没有。 最接近的事情是通过堆栈线程上下文。 这就是越来越多的Go语言库正在做的事情。 一种比较典型的方法是通过中间件软件包来执行此操作,该中间件软件包将请求ID添加到Web请求的上下文中,例如: 然后,假设您传递了