2012-04-05 22 views
0

ich eine XML-Datei 'cleanall.xml' mit folgendem Inhalt erstellt:Löschen Sie alle Dokumente in Solr Ursache 400 Bad Request

<?xml version="1.0" encoding="UTF-8"?> 
<delete><query>*:*</query></delete> 
<commit /> 

dann ausgegeben folgenden Befehl ein:

java -Durl=http://localhost:8080/solr/update -jar post.jar cleanall.xml 

und es kehrt # 400 Ungültige Anforderung. Aber wenn ich einen anderen Befehl ausstelle:

java -Ddata=args -Dcommit=yes -Durl=http://localhost:8080/solr/update -jar post.jar "<delete><query>*:*</query></delete>" 

dann läuft es ok. Erlaubt post.jar nicht, den Löschbefehl in einem XML-Dateiargument anzugeben?

Antwort

4

post.jar schreibt die Änderungen automatisch in den Solr-Index ein. Verwenden Sie nur diese -

<delete><query>*:*</query></delete> 

So brauchen Sie nicht in der XML-explicity.

Der 400 Fehler ist Ursache von Sie haben mehrere Wurzeln in der XML.

Error 400 Illegal to have multiple roots (start tag in epilog?). 
Verwandte Themen