こんにちは
仕様:Java 15 と SolrJ 8.10.0 / Solr を使用
手順:すでに GitHub の SolrJ ソースからこのコードを試しました。
SchemaRequest.AddField addFieldRequest = new SchemaRequest.AddField(fieldAttributes);
SchemaResponse.UpdateResponse addFieldResponse = addFieldRequest.process(solrClient, collectionName);
コードを実行した際のレスポンス:
コアを作成しました:/solr -create -c testingSolarCore
エンドポイント:"http://localhost:8081/solr"
コレクション名:"testingSolarCore"
SolrCoreAdminManageFieldTyposBean
scrBn
を使用し、以下の値を格納する Bean として使用しています。
solrCoreFieldTypeContent = new HashMap<String, Object>();
solrCoreFieldTypeContent.put("name", scrBn.getFieldName());
solrCoreFieldTypeContent.put("field type", scrBn.getFieldType());
solrCoreFieldTypeContent.put("stored", scrBn.isFieldStored());
solrCoreFieldTypeContent.put("indexed", scrBn.isFieldIndexed());
solrCoreFieldTypeContent.put("uninvertible", scrBn.isFieldUninvertible());
solrCoreFieldTypeContent.put("docValues", scrBn.isFieldDocValues());
solrCoreFieldTypeContent.put("multiValued", scrBn.isFieldMultiValued());
solrCoreFieldTypeContent.put("required", scrBn.isFieldRequired());
addFieldRequest = new SchemaRequest.AddField(solrCoreFieldTypeContent);
addFieldResponse = addFieldRequest.process(SolrClnt_, solrCoreAdmnBn.getNewCollectname());
this.solrCommit();
出力:
Error from server at http://localhost:8081/solr: error processing commands, errors: [{add-field={indexed=true, stored=true, name=testNames, uninvertible=true, field type=String, docValues=false, multiValued=false, required=false}, errorMessages=['type' is a required field]}],
コードスニペットを共有していただけますか?