6

Solrj Wikiで詳しく説明されているような、Javaを使用した単純なSolrDocument送信を実行しようとしています。ただし、送信は常に失敗し、次のように返されます。

org.apache.solr.common.SolrException: Bad Request
Bad Request
request: http://address:port/solr/update?wt=xml&version=2.2

Solrjを介してSolrサーバーにクエリを実行しても問題は発生しないため、アドレスや接続に問題はないと思います。

これが曖昧すぎる場合はお詫びしますが、これが私が続けなければならないすべてです。ありがとう。

4

5 に答える 5

8

以前にこの問題に遭遇しました。私の問題は、schema.xml で定義されたフィールドで solr ドキュメントが有効でないことです。したがって、フィールドとタイプを一致させると、問題が修正されます。

于 2011-06-17T04:52:45.787 に答える
2

schema.xml によると、一部のフィールドが間違っている可能性があります。クラスパスに複数の schema.xml があるかどうかを確認する以外に、サーバーが正しいものの前に間違ったものをロードしている可能性があります。

于 2012-01-13T20:44:13.870 に答える
0

可能であれば、HttpSolrServer の代わりに CloudSolrServer を使用して接続を試みて、より少ない労力で何が問題なのかを把握できるようにします。後者は、リクエストがどのように「悪い」ものであったかについての手がかりを含まないこの例外を提供することがわかりましたが、前者はより詳細な情報を持っています。

必須フィールドが欠落している場合の HttpSolrServer 例外f:

org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Bad Request

同じことに対する CloudSolrServer 例外:

org.apache.solr.client.solrj.impl.CloudSolrServer$RouteException: [doc=1] missing required field: f

于 2015-08-28T17:51:36.260 に答える
-1

あなたのsolr管理ページに行き、loggingを押してください。未定義のフィールド エラーを確認し、そのフィールドを schema.xml に追加して、solr を再起動します。

于 2018-06-13T10:27:54.110 に答える