現在、Solr 4.1 と Lucene 4.1 の組み合わせで次の問題が発生しています。
次のような Solr-Bean があります。
import org.apache.solr.client.solrj.beans.Field;
public final class Bean {
@Field
private int someInt;
@Field
private String someString;
//Fields like this are just being updated for easier use of the bean
private List<Integer> someStringSplitIntoIntegers
//setters, rest is the same:
public void setSomeInt(int someInt) {
this.someInt = someInt;
}
//getters straightforward...
}
HttpSolrServer.addBean(bean) を介して Bean を Solr データベースに追加したいのですが、次の例外が発生しています。
Exception in thread "main" org.apache.solr.client.solrj.beans.BindingException: Invalid setter method. Must have one and only one parameter
at org.apache.solr.client.solrj.beans.DocumentObjectBinder$DocField.storeType(DocumentObjectBinder.java:202)
at org.apache.solr.client.solrj.beans.DocumentObjectBinder$DocField.<init>(DocumentObjectBinder.java:150)
at org.apache.solr.client.solrj.beans.DocumentObjectBinder.collectInfo(DocumentObjectBinder.java:119)
at org.apache.solr.client.solrj.beans.DocumentObjectBinder.getDocFields(DocumentObjectBinder.java:99)
at org.apache.solr.client.solrj.beans.DocumentObjectBinder.toSolrInputDocument(DocumentObjectBinder.java:73)
at org.apache.solr.client.solrj.SolrServer.addBean(SolrServer.java:136)
at org.apache.solr.client.solrj.SolrServer.addBean(SolrServer.java:125)
(...my call...)
しかし、理由がわかりません。セッターごとに複数の引数のクラスを数回持っていますが、問題ありません(Eclipseによって生成されます)。
そして今、質問:
私は何が欠けていますか?この理由は何でしょうか?schema.xml にエントリがないと、これらのエラーが発生しますか?
前もって感謝します。
マーティン・ブラウン