In your schema you have written > <fieldtype name="ignored" stored="false" indexed="false" multiValued="true" > class="solr.StrField" />
Note that XML tag and param names are case sensitive, so instead of fieldtype you should use fieldType I see that you have the same error for several fieldTypes in your schema, probably resulting in other similar errors too. -- Jan Høydahl, search solution architect Cominvent AS - www.cominvent.com Solr Training - www.solrtraining.com 25. apr. 2013 kl. 01:10 skrev Furkan KAMACI <furkankam...@gmail.com>: > Hi Alex; > What do you mean with wrong case. Could you tell me what should I do? > > 2013/4/25 Alexandre Rafalovitch <arafa...@gmail.com> > >> You still seem to have 'fieldtype' with wrong case. Can you try that >> simple thing before doing other complicated steps? And yes, restart >> Solr after you change schema.xml >> >> Regards, >> Alex. >> Personal blog: http://blog.outerthoughts.com/ >> LinkedIn: http://www.linkedin.com/in/alexandrerafalovitch >> - Time is the quality of nature that keeps events from happening all >> at once. Lately, it doesn't seem to be working. (Anonymous - via GTD >> book) >> >> >> On Wed, Apr 24, 2013 at 6:50 PM, Furkan KAMACI <furkankam...@gmail.com> >> wrote: >>> Here is my definition for handler: >>> >>> <requestHandler name="/update/extract" class="solr.extraction. >>> ExtractingRequestHandler" > >>> <lst name="defaults"> >>> <str name="fmap.content">text</str> >>> <str name="lowernames">true</str> >>> <str name="uprefix">attr_</str> >>> <str name="captureAttr">true</str> >>> </lst> >>> </requestHandler> >>> >>> >>> >>> >>> 2013/4/25 Furkan KAMACI <furkankam...@gmail.com> >>> >>>> I just want to search on rich documents but I still get same error. I >> have >>>> copied example folder into anywhere else at my computer. I have copied >> dist >>>> and contrib folders from my build folder into that copy of example >> folder >>>> (because solr-cell etc. are within that folders) However I still get >> same >>>> error. If any of you could help me you are welcome. Here is my schema: >>>> >>>> >>>> <?xml version="1.0" encoding="UTF-8" ?> >>>> <!-- >>>> Licensed to the Apache Software Foundation (ASF) under one or more >>>> contributor license agreements. See the NOTICE file distributed with >>>> this work for additional information regarding copyright ownership. >>>> The ASF licenses this file to You under the Apache License, Version 2.0 >>>> (the "License"); you may not use this file except in compliance with >>>> the License. You may obtain a copy of the License at >>>> >>>> http://www.apache.org/licenses/LICENSE-2.0 >>>> >>>> Unless required by applicable law or agreed to in writing, software >>>> distributed under the License is distributed on an "AS IS" BASIS, >>>> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. >>>> See the License for the specific language governing permissions and >>>> limitations under the License. >>>> --> >>>> <!-- >>>> Description: This document contains Solr 4.x schema definition to >>>> be used with Solr integration currently build into Nutch. >>>> This schema is not minimal, there are some useful field type definitions >>>> left, >>>> and the set of fields and their flags (indexed/stored/term vectors) can >> be >>>> further optimized depending on needs. See >>>> >>>> >> http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/solr/conf/schema.xml?view=markup >>>> for more info. >>>> --> >>>> >>>> <schema name="nutch" version="1.5"> >>>> >>>> <types> >>>> >>>> <!-- The StrField type is not analyzed, but indexed/stored verbatim. --> >>>> <fieldType name="string" class="solr.StrField" sortMissingLast="true" >>>> omitNorms="true"/> >>>> >>>> >>>> <!-- >>>> Default numeric field types. For faster range queries, consider the >>>> tint/tfloat/tlong/tdouble types. >>>> --> >>>> <fieldType name="int" class="solr.TrieIntField" precisionStep="0" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> <fieldType name="float" class="solr.TrieFloatField" precisionStep="0" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> <fieldType name="long" class="solr.TrieLongField" precisionStep="0" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> <fieldType name="double" class="solr.TrieDoubleField" precisionStep="0" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> >>>> <!-- >>>> Numeric field types that index each value at various levels of precision >>>> to accelerate range queries when the number of values between the range >>>> endpoints is large. See the javadoc for NumericRangeQuery for internal >>>> implementation details. >>>> >>>> Smaller precisionStep values (specified in bits) will lead to more >> tokens >>>> indexed per value, slightly larger index size, and faster range queries. >>>> A precisionStep of 0 disables indexing at different precision levels. >>>> --> >>>> <fieldType name="tint" class="solr.TrieIntField" precisionStep="8" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> <fieldType name="tfloat" class="solr.TrieFloatField" precisionStep="8" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> <fieldType name="tlong" class="solr.TrieLongField" precisionStep="8" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> <fieldType name="tdouble" class="solr.TrieDoubleField" precisionStep="8" >>>> omitNorms="true" positionIncrementGap="0"/> >>>> >>>> <!-- The format for this date field is of the form 1995-12-31T23:59:59Z, >>>> and >>>> is a more restricted form of the canonical representation of dateTime >>>> http://www.w3.org/TR/xmlschema-2/#dateTime >>>> The trailing "Z" designates UTC time and is mandatory. >>>> Optional fractional seconds are allowed: 1995-12-31T23:59:59.999Z >>>> All other components are mandatory. >>>> >>>> Expressions can also be used to denote calculations that should be >>>> performed relative to "NOW" to determine the value, ie... >>>> >>>> NOW/HOUR >>>> ... Round to the start of the current hour >>>> NOW-1DAY >>>> ... Exactly 1 day prior to now >>>> NOW/DAY+6MONTHS+3DAYS >>>> ... 6 months and 3 days in the future from the start of >>>> the current day >>>> >>>> Consult the DateField javadocs for more information. >>>> >>>> Note: For faster range queries, consider the tdate type >>>> --> >>>> <fieldType name="date" class="solr.TrieDateField" omitNorms="true" >>>> precisionStep="0" positionIncrementGap="0"/> >>>> >>>> <!-- A Trie based date field for faster date range queries and date >>>> faceting. --> >>>> <fieldType name="tdate" class="solr.TrieDateField" omitNorms="true" >>>> precisionStep="6" positionIncrementGap="0"/> >>>> >>>> >>>> <!-- solr.TextField allows the specification of custom text analyzers >>>> specified as a tokenizer and a list of token filters. Different >>>> analyzers may be specified for indexing and querying. >>>> >>>> The optional positionIncrementGap puts space between multiple fields of >>>> this type on the same document, with the purpose of preventing false >> phrase >>>> matching across fields. >>>> >>>> For more info on customizing your analyzer chain, please see >>>> http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters >>>> --> >>>> >>>> <!-- A general text field that has reasonable, generic >>>> cross-language defaults: it tokenizes with StandardTokenizer, >>>> removes stop words from case-insensitive "stopwords.txt" >>>> (empty by default), and down cases. At query time only, it >>>> also applies synonyms. --> >>>> <fieldType name="text_general" class="solr.TextField" >>>> positionIncrementGap="100"> >>>> <analyzer type="index"> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <filter class="solr.StopFilterFactory" ignoreCase="true" >>>> words="stopwords.txt" enablePositionIncrements="true" /> >>>> <!-- in this example, we will only use synonyms at query time >>>> <filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" >>>> ignoreCase="true" expand="false"/> >>>> --> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> </analyzer> >>>> <analyzer type="query"> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <filter class="solr.StopFilterFactory" ignoreCase="true" >>>> words="stopwords.txt" enablePositionIncrements="true" /> >>>> <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" >>>> ignoreCase="true" expand="true"/> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> </analyzer> >>>> </fieldType> >>>> >>>> <!-- A text field with defaults appropriate for English: it >>>> tokenizes with StandardTokenizer, removes English stop words >>>> (stopwords.txt), down cases, protects words from protwords.txt, and >>>> finally applies Porter's stemming. The query time analyzer >>>> also applies synonyms from synonyms.txt. --> >>>> <fieldType name="text_en" class="solr.TextField" >>>> positionIncrementGap="100"> >>>> <analyzer type="index"> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <!-- in this example, we will only use synonyms at query time >>>> <filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" >>>> ignoreCase="true" expand="false"/> >>>> --> >>>> <!-- Case insensitive stop word removal. >>>> add enablePositionIncrements=true in both the index and query >>>> analyzers to leave a 'gap' for more accurate phrase queries. >>>> --> >>>> <filter class="solr.StopFilterFactory" >>>> ignoreCase="true" >>>> words="stopwords.txt" >>>> enablePositionIncrements="true" >>>> /> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> <filter class="solr.EnglishPossessiveFilterFactory"/> >>>> <filter class="solr.KeywordMarkerFilterFactory" >> protected="protwords.txt"/> >>>> <!-- Optionally you may want to use this less aggressive stemmer instead >>>> of PorterStemFilterFactory: >>>> <filter class="solr.EnglishMinimalStemFilterFactory"/> >>>> --> >>>> <filter class="solr.PorterStemFilterFactory"/> >>>> </analyzer> >>>> <analyzer type="query"> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" >>>> ignoreCase="true" expand="true"/> >>>> <filter class="solr.StopFilterFactory" >>>> ignoreCase="true" >>>> words="stopwords.txt" >>>> enablePositionIncrements="true" >>>> /> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> <filter class="solr.EnglishPossessiveFilterFactory"/> >>>> <filter class="solr.KeywordMarkerFilterFactory" >> protected="protwords.txt"/> >>>> <!-- Optionally you may want to use this less aggressive stemmer instead >>>> of PorterStemFilterFactory: >>>> <filter class="solr.EnglishMinimalStemFilterFactory"/> >>>> --> >>>> <filter class="solr.PorterStemFilterFactory"/> >>>> </analyzer> >>>> </fieldType> >>>> >>>> <!-- A text field with defaults appropriate for English, plus >>>> aggressive word-splitting and autophrase features enabled. >>>> This field is just like text_en, except it adds >>>> WordDelimiterFilter to enable splitting and matching of >>>> words on case-change, alpha numeric boundaries, and >>>> non-alphanumeric chars. This means certain compound word >>>> cases will work, for example query "wi fi" will match >>>> document "WiFi" or "wi-fi". However, other cases will still >>>> not match, for example if the query is "wifi" and the >>>> document is "wi fi" or if the query is "wi-fi" and the >>>> document is "wifi". >>>> --> >>>> <fieldType name="text_en_splitting" class="solr.TextField" >>>> positionIncrementGap="100" autoGeneratePhraseQueries="true"> >>>> <analyzer type="index"> >>>> <tokenizer class="solr.WhitespaceTokenizerFactory"/> >>>> <!-- in this example, we will only use synonyms at query time >>>> <filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" >>>> ignoreCase="true" expand="false"/> >>>> --> >>>> <!-- Case insensitive stop word removal. >>>> add enablePositionIncrements=true in both the index and query >>>> analyzers to leave a 'gap' for more accurate phrase queries. >>>> --> >>>> <filter class="solr.StopFilterFactory" >>>> ignoreCase="true" >>>> words="stopwords.txt" >>>> enablePositionIncrements="true" >>>> /> >>>> <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" >>>> generateNumberParts="1" catenateWords="1" catenateNumbers="1" >>>> catenateAll="0" splitOnCaseChange="1"/> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> <filter class="solr.KeywordMarkerFilterFactory" >> protected="protwords.txt"/> >>>> <filter class="solr.PorterStemFilterFactory"/> >>>> </analyzer> >>>> <analyzer type="query"> >>>> <tokenizer class="solr.WhitespaceTokenizerFactory"/> >>>> <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" >>>> ignoreCase="true" expand="true"/> >>>> <filter class="solr.StopFilterFactory" >>>> ignoreCase="true" >>>> words="stopwords.txt" >>>> enablePositionIncrements="true" >>>> /> >>>> <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" >>>> generateNumberParts="1" catenateWords="0" catenateNumbers="0" >>>> catenateAll="0" splitOnCaseChange="1"/> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> <filter class="solr.KeywordMarkerFilterFactory" >> protected="protwords.txt"/> >>>> <filter class="solr.PorterStemFilterFactory"/> >>>> </analyzer> >>>> </fieldType> >>>> >>>> <!-- Less flexible matching, but less false matches. Probably not ideal >>>> for product names, >>>> but may be good for SKUs. Can insert dashes in the wrong place and still >>>> match. --> >>>> <fieldType name="text_en_splitting_tight" class="solr.TextField" >>>> positionIncrementGap="100" autoGeneratePhraseQueries="true"> >>>> <analyzer> >>>> <tokenizer class="solr.WhitespaceTokenizerFactory"/> >>>> <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" >>>> ignoreCase="true" expand="false"/> >>>> <filter class="solr.StopFilterFactory" ignoreCase="true" >>>> words="stopwords.txt"/> >>>> <filter class="solr.WordDelimiterFilterFactory" generateWordParts="0" >>>> generateNumberParts="0" catenateWords="1" catenateNumbers="1" >>>> catenateAll="0"/> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> <filter class="solr.KeywordMarkerFilterFactory" >> protected="protwords.txt"/> >>>> <filter class="solr.EnglishMinimalStemFilterFactory"/> >>>> <!-- this filter can remove any duplicate tokens that appear at the same >>>> position - sometimes >>>> possible with WordDelimiterFilter in conjuncton with stemming. --> >>>> <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> >>>> </analyzer> >>>> </fieldType> >>>> >>>> <!-- Just like text_general except it reverses the characters of >>>> each token, to enable more efficient leading wildcard queries. --> >>>> <fieldType name="text_general_rev" class="solr.TextField" >>>> positionIncrementGap="100"> >>>> <analyzer type="index"> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <filter class="solr.StopFilterFactory" ignoreCase="true" >>>> words="stopwords.txt" enablePositionIncrements="true" /> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> <filter class="solr.ReversedWildcardFilterFactory" withOriginal="true" >>>> maxPosAsterisk="3" maxPosQuestion="2" maxFractionAsterisk="0.33"/> >>>> </analyzer> >>>> <analyzer type="query"> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" >>>> ignoreCase="true" expand="true"/> >>>> <filter class="solr.StopFilterFactory" ignoreCase="true" >>>> words="stopwords.txt" enablePositionIncrements="true" /> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> </analyzer> >>>> </fieldType> >>>> >>>> <fieldtype name="phonetic" stored="false" indexed="true" >>>> class="solr.TextField" > >>>> <analyzer> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <filter class="solr.DoubleMetaphoneFilterFactory" inject="false"/> >>>> </analyzer> >>>> </fieldtype> >>>> >>>> <fieldtype name="payloads" stored="false" indexed="true" >>>> class="solr.TextField" > >>>> <analyzer> >>>> <tokenizer class="solr.WhitespaceTokenizerFactory"/> >>>> <!-- >>>> The DelimitedPayloadTokenFilter can put payloads on tokens... for >> example, >>>> a token of "foo|1.4" would be indexed as "foo" with a payload of 1.4f >>>> Attributes of the DelimitedPayloadTokenFilterFactory : >>>> "delimiter" - a one character delimiter. Default is | (pipe) >>>> "encoder" - how to encode the following value into a playload >>>> float -> org.apache.lucene.analysis.payloads.FloatEncoder, >>>> integer -> o.a.l.a.p.IntegerEncoder >>>> identity -> o.a.l.a.p.IdentityEncoder >>>> Fully Qualified class name implementing PayloadEncoder, Encoder must >> have >>>> a no arg constructor. >>>> --> >>>> <filter class="solr.DelimitedPayloadTokenFilterFactory" >> encoder="float"/> >>>> </analyzer> >>>> </fieldtype> >>>> >>>> <!-- lowercases the entire field value, keeping it as a single token. >> --> >>>> <fieldType name="lowercase" class="solr.TextField" >>>> positionIncrementGap="100"> >>>> <analyzer> >>>> <tokenizer class="solr.KeywordTokenizerFactory"/> >>>> <filter class="solr.LowerCaseFilterFactory" /> >>>> </analyzer> >>>> </fieldType> >>>> >>>> <fieldType name="url" class="solr.TextField" positionIncrementGap="100"> >>>> <analyzer> >>>> <tokenizer class="solr.StandardTokenizerFactory"/> >>>> <filter class="solr.LowerCaseFilterFactory"/> >>>> <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" >>>> generateNumberParts="1"/> >>>> </analyzer> >>>> </fieldType> >>>> >>>> >>>> <fieldType name="text_path" class="solr.TextField" >>>> positionIncrementGap="100"> >>>> <analyzer> >>>> <tokenizer class="solr.PathHierarchyTokenizerFactory"/> >>>> </analyzer> >>>> </fieldType> >>>> >>>> <!-- since fields of this type are by default not stored or indexed, >>>> any data added to them will be ignored outright. --> >>>> <fieldtype name="ignored" stored="false" indexed="false" >>>> multiValued="true" class="solr.StrField" /> >>>> >>>> </types> >>>> >>>> <fields> >>>> <field name="id" type="string" indexed="true" stored="true" >>>> required="true" multiValued="false" /> >>>> <field name="text" type="text_general" indexed="true" stored="true"/> >>>> <dynamicField name="attr_*" type="text_general" indexed="true" >>>> stored="true" multiValued="true"/> >>>> <!-- Common metadata fields, named specifically to match up with >>>> SolrCell metadata when parsing rich documents such as Word, PDF. >>>> Some fields are multiValued only because Tika currently may return >>>> multiple values for them. Some metadata is parsed from the documents, >>>> but there are some which come from the client context: >>>> "content_type": From the HTTP headers of incoming stream >>>> "resourcename": From SolrCell request param resource.name >>>> --> >>>> <field name="title" type="text_general" indexed="true" stored="true" >>>> multiValued="true"/> >>>> <field name="subject" type="text_general" indexed="true" stored="true"/> >>>> <field name="description" type="text_general" indexed="true" >>>> stored="true"/> >>>> <field name="comments" type="text_general" indexed="true" >> stored="true"/> >>>> <field name="author" type="text_general" indexed="true" stored="true"/> >>>> <field name="keywords" type="text_general" indexed="true" >> stored="true"/> >>>> <field name="category" type="text_general" indexed="true" >> stored="true"/> >>>> <field name="resourcename" type="text_general" indexed="true" >>>> stored="true"/> >>>> <field name="url" type="text_general" indexed="true" stored="true"/> >>>> <field name="content_type" type="string" indexed="true" stored="true" >>>> multiValued="true"/> >>>> <field name="last_modified" type="date" indexed="true" stored="true"/> >>>> <field name="links" type="string" indexed="true" stored="true" >>>> multiValued="true"/> >>>> >>>> <!-- Main body of document extracted by SolrCell. >>>> NOTE: This field is not indexed by default, since it is also copied to >>>> "text" >>>> using copyField below. This is to save space. Use this field for >> returning >>>> and >>>> highlighting document content. Use the "text" field to search the >> content. >>>> --> >>>> <field name="content" type="text_general" indexed="false" stored="true" >>>> multiValued="true"/> >>>> >>>> <field name="_version_" type="long" indexed="true" stored="true"/> >>>> >>>> <dynamicField name="*" type="ignored" multiValued="true"/> >>>> </fields> >>>> >>>> <uniqueKey>id</uniqueKey> >>>> <defaultSearchField>text</defaultSearchField> >>>> <solrQueryParser defaultOperator="OR"/> >>>> >>>> <!-- Text fields from SolrCell to search by default in our catch-all >> field >>>> --> >>>> <copyField source="title" dest="text"/> >>>> <copyField source="author" dest="text"/> >>>> <copyField source="description" dest="text"/> >>>> <copyField source="keywords" dest="text"/> >>>> <copyField source="content" dest="text"/> >>>> <copyField source="content_type" dest="text"/> >>>> <copyField source="resourcename" dest="text"/> >>>> <copyField source="url" dest="text"/> >>>> >>>> <!-- Create a string version of author for faceting --> >>>> <copyField source="author" dest="author_s"/> >>>> >>>> </schema> >>>> >>>> >>>> >>>> >>>> 2013/4/25 Erik Hatcher <erik.hatc...@gmail.com> >>>> >>>>> Did you restart after adding those fields and types? >>>>> >>>>> On Apr 24, 2013, at 16:59, Furkan KAMACI <furkankam...@gmail.com> >> wrote: >>>>> >>>>>> I have added that fields: >>>>>> >>>>>> <field name="text" type="text_general" indexed="true" stored="true"/> >>>>>> <dynamicField name="attr_*" type="text_general" indexed="true" >>>>>> stored="true" multiValued="true"/> >>>>>> <dynamicField name="ignored_*" type="ignored"/> >>>>>> >>>>>> and I have that definition: >>>>>> >>>>>> <fieldtype name="ignored" stored="false" indexed="false" >>>>> multiValued="true" >>>>>> class="solr.StrField" /> >>>>>> >>>>>> here is my error: >>>>>> >>>>>> <?xml version="1.0" encoding="UTF-8"?> >>>>>> <response> >>>>>> <lst name="responseHeader"> >>>>>> <int name="status">400</int> >>>>>> <int name="QTime">4154</int> >>>>>> </lst> >>>>>> <lst name="error"> >>>>>> <str name="msg">ERROR: [doc=1] unknown field 'ignored_meta'</str> >>>>>> <int name="code">400</int> >>>>>> </lst> >>>>>> </response> >>>>>> >>>>>> What should I do more? >>>>>> >>>>>> 2013/4/24 Erik Hatcher <erik.hatc...@gmail.com> >>>>>> >>>>>>> Also, at Solr startup time it logs what it loads from those <lib> >>>>>>> elements, so you can see whether it is loading the files you intend >> to >>>>> or >>>>>>> not. >>>>>>> >>>>>>> Erik >>>>>>> >>>>>>> On Apr 24, 2013, at 10:05 , Alexandre Rafalovitch wrote: >>>>>>> >>>>>>>> Have you tried using absolute path to the relevant urls? That will >>>>>>>> cleanly split the problem into 'still not working' and 'wrong >> relative >>>>>>>> path'. >>>>>>>> >>>>>>>> Regards, >>>>>>>> Alex. >>>>>>>> On Wed, Apr 24, 2013 at 9:02 AM, Furkan KAMACI < >>>>> furkankam...@gmail.com> >>>>>>> wrote: >>>>>>>>> <lib dir="../../../contrib/extraction/lib" regex=".*\.jar" /> >>>>>>>>> <lib dir="../../../dist/" regex="solr-cell-\d.*\.jar" /> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Personal blog: http://blog.outerthoughts.com/ >>>>>>>> LinkedIn: http://www.linkedin.com/in/alexandrerafalovitch >>>>>>>> - Time is the quality of nature that keeps events from happening >> all >>>>>>>> at once. Lately, it doesn't seem to be working. (Anonymous - via >> GTD >>>>>>>> book) >>>>>>> >>>>>>> >>>>> >>>> >>>> >>