Curl 创建/替换新字段类型时仅添加一个标记器筛选器

Curl 创建/替换新字段类型时仅添加一个标记器筛选器,curl,solr,filter,tokenize,fieldtype,Curl,Solr,Filter,Tokenize,Fieldtype,我正在使用Curl添加字段类型: curl -X POST -H 'Content-type:application/json' --data-binary '{ "add-field-type" : { "name":"valueWithSubFields", "class":"solr.TextField", "positionIncrementGap":"100", "indexAnalyzer":{

我正在使用Curl添加字段类型:

curl -X POST -H 'Content-type:application/json' --data-binary '{
    "add-field-type" :  {
        "name":"valueWithSubFields",
        "class":"solr.TextField",
        "positionIncrementGap":"100",
        "indexAnalyzer":{
            "tokenizer": { "class":"solr.KeywordTokenizerFactory" },
            "filters": [{ "class":"solr.LowerCaseFilterFactory"}],
            "filters": [{ "class":"solr.ASCIIFoldingFilterFactory" }],  
            "filters": [{ "class":"solr.ReversedWildcardFilterFactory" }]           
        },
        "queryAnalyzer": {
            "tokenizer": { "class":"solr.KeywordTokenizerFactory" },
            "filters": [{ "class":"solr.LowerCaseFilterFactory" }],
            "filters": [{ "class":"solr.ASCIIFoldingFilterFactory" }]
        }
    }
}' http://localhost:8983/solr/myMainCore/schema
这是我创建的字段类型

<fieldType name="valueWithSubFields" class="solr.TextField"  positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.ReversedWildcardFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.ASCIIFoldingFilterFactory"/>
    </analyzer>
</fieldType>

问题是,实际上只添加了最后的标记器过滤器。我真的不明白为什么会这样。我试图更改标记器类,但仍然得到相同的结果


任何帮助都将不胜感激。

过滤器阵列应采用这种方式

"filters": [
              {
                 "class":"solr.LowerCaseFilterFactory"
              },
              {
                 "class":"solr.ASCIIFoldingFilterFactory"
              },
              {
                 "class":"solr.ReversedWildcardFilterFactory"
              }
          ],
而full curl命令是

curl -X POST -H 'Content-type:application/json' --data-binary '{
    "add-field-type" :  {
        "name":"valueWithSubFields",
        "class":"solr.TextField",
        "positionIncrementGap":"100",
        "indexAnalyzer":{
            "tokenizer": { "class":"solr.KeywordTokenizerFactory" },
            "filters": [
                    {
                        "class":"solr.LowerCaseFilterFactory"
                    },
                    {
                        "class":"solr.ASCIIFoldingFilterFactory"
                    },
                    {
                        "class":"solr.ReversedWildcardFilterFactory"
                    }
                ]           
        },
        "queryAnalyzer": {
            "tokenizer": { "class":"solr.KeywordTokenizerFactory" },
            "filters": [
                    {
                        "class":"solr.LowerCaseFilterFactory"
                    },
                    {
                        "class":"solr.ASCIIFoldingFilterFactory"
                    }
                ]
        }
    }
}' http://localhost:8983/solr/myMainCore/schema