2010-08-27 14 views
9

Podczas pracy z Solr, otrzymuję ten błąd:ERROR: nieznany pole '..'

ERROR:unknown field 'name' 

Ale mam zdefiniowane to pole w moim schema.xml:

<field name="name" type="string" indexed="false" 
     stored="true" required="true" elementForm="INPUTHIDDEN" /> 

otrzymuję ten błąd, gdy próbuję dodać pole do dokumentu, który zostanie zatwierdzony:

doc.addField("name", getName()); 
solrClient.addDocument(doc); 

Jakieś pomysły? Z góry dziękuję.

+1

Czy usuniesz to pytanie w momencie, gdy je usuniesz pozostałe dwa pytania, które zamieściłeś na temat Solr? : -/ –

+0

Nie będę, ale nie sądzę, nikt nie da mi odpowiedzi: s Przepraszam za usunięcie –

+0

Dziś spotykam to samo pytanie, czy rozwiązałeś ten problem? Myślę, że potrzebuję twojej pomocy. –

Odpowiedz

6

Jeśli chcesz zweryfikować konfigurację indeksu w Solr, możesz użyć handler'a /admin/luke powszechnie zdefiniowanego w pliku solrconfig.xml. Dane wyjściowe zawierają informacje o polach zdefiniowanych w schemacie załadowanym przez Solr.

Jeśli nie widzisz tam swojego pola name, sprawdź dokładnie, czy zaktualizowałeś plik schema.xml w poprawnej lokalizacji indeksu i że od tego momentu odpowiedni rdzeń Solr (lub sam Solr) został ponownie uruchomiony, aby załadować zmiany.

+9

Chcę podkreślić wiele na ostatnim zdaniu: faza restartu jest konieczna, a zmiana schematu bez wykonywania tego jest dość powszechnym błędem –

+0

... lub po prostu przeładuj kolekcję. –

1

miałem ten sam problem, i znalazłem rozwiązanie

Zrobiłem to mam Błąd Nieznane pole więc Spojrzałem w schemacie Solr (schema.xml) i znalazłem

użyłem sklepu określonego w schemacie. rób to samo. powinieneś poszukać pola deklarowanego w ten sam sposób, co twoje, lub użyć poleceń do dodania swojego pola (nie bardzo wiem o tym, ale go znajdziesz;) )