使用SolrJ添加非字符串字段

时间:2011-05-08 15:00:41

标签: solr solrj

我有一个名为Dataset的类,它有一个Organization字段。我想将其添加到solr索引中。我也给了组织领域适当的注释。

public class Dataset {

    @Field("publisher")
    @rdf("http://www.w3.org/ns/foaf#publisher")
    private Organization publisher;

public class Organization  {

    @Field("OrganizationName")
    @rdf("http://www.w3.org/ns/foaf#name")
    private String name;

但是当我将bean添加到solr时,我得到的是这样的东西:

<doc>
<arr name="keyword">
<str>public</str>
</arr>
...
<date name="modified">1995-12-31T23:59:59Z</date>
<str name="publisher">Organization [name=MECON]</str>
...
<str name="type">dataset</str>
</doc>

我不喜欢它看起来如何,并且从那个方面来看很难看。我想得到类似于名为publisherName的单个字段或类似的东西(组织类中每个字段的一个字符串)。 我是否需要为发布商字段定义fieldType?怎么解决这个问题?有什么例子吗?

2 个答案:

答案 0 :(得分:1)

据我所知,SolrJ尚不支持嵌套对象。请参阅corresponding JIRA issue了解相关信息以获取更新和/或为实施更新做出贡献。

与此同时,您需要展平对象图。

答案 1 :(得分:0)

现在问题已得到修复,如何解决如何使用文档对象绑定一般很困难,所以我要求更新https://issues.apache.org/jira/browse/SOLR-11032上的solj教程,并将此答案更新为一旦它修好了。