Hello!

I am working with Tomcat. I have put the Lucene highlighter.jar in the
folder lib. And I have created an extra css, where I say that the background
color has to be yellow. The searchword has to be highlighted know.
I have got a dataTable in which the result of the following Lucene method is
loaded:

[code]
public void search(String q,  File index, String [] fields, ArrayList
subresult, int numresults)  throws Exception {
 
 
                        Directory fsDir = FSDirectory.getDirectory(index, 
false);
                        IndexSearcher is = new IndexSearcher(fsDir);
 
                                Analyzer analyzer = new StandardAnalyzer();
                                Fragmenter fragmenter = new 
SimpleFragmenter(100);
                                QueryParser queryparser = new 
MultiFieldQueryParser (fields, analyzer);
                                                Query query = 
queryparser.parse(q);
                                                Hits hits = is.search(query);
                                                IndexReader reader=null;
                                                query=query.rewrite(reader);
                                                QueryScorer scorer = new 
QueryScorer(query);

        SimpleHTMLFormatter formatter= new SimpleHTMLFormatter("","");
                                                Highlighter high = new 
Highlighter(formatter,scorer);
                                                
high.setTextFragmenter(fragmenter); 
                                                numresults = numresults == -1 
|| numresults > hits.length() ?
hits.length() : numresults;
                                                String rating = "";
                                                for (int i = 0; i <numresults; 
i++) {
                                                         if 
(hits.score(i)>schwelli){
                                                                float f = 
hits.score(i);
                                                                if (0.9f <= f) 
{rating = "******";}
                                                                else if (0.8f 
<= f && f<0.9f){rating = "*****";}
                                                                else if (0.7f 
<= f && f<0.8f){rating = "****";}
                                                                else if (0.6f 
<= f && f<0.7f){rating = "***";}
                                                                else if (0.5f 
<= f && f<0.6f){rating = "**";}
                                                                else if (f <= 
0.5f){rating = "*";}
                                                                 Document doc = 
hits.doc(i);
                                                                 String 
abstracts =doc.get("ABSTRACTS");
                                                                 String title = 
doc.get("TITLE");
                                                                 TokenStream 
abstract_stream = analyzer.tokenStream(q, new
StringReader(abstracts));
                                                                 TokenStream 
title_straem = analyzer.tokenStream(q, new
StringReader(title));
                                                                String 
fragment_abstract =
high.getBestFragments(abstract_stream,abstracts, 5, "...");
                                                                 String 
fragment_title = high.getBestFragments(title_straem,title,
5, "...");
                                                                 
if(fragment_title.length()==0){
                                                                                
 setAusgabeTitle(doc.get("TITLE"));
                                                                 }else{
                                                                                
 setAusgabeTitle(fragment_title);
                                                                 }
                                                                  
if(fragment_abstract.length()==0){
                                                                                
 setAusgabeAbstract(doc.get("ABSTRACTS"));
                                                                 }else{
                                                                                
 setAusgabeAbstract(fragment_abstract);
                                                                 }
                                                                  
                                                                
//list.add(i+1+"\t"+q+"\t"+doc.get(entry_medline)+"\t"+hits.score(i)+"\t"+abstract_stream+"\t"+title_straem+"\t"+"MEDLINE");
                                                             
                                                             /*int No = i;
                                                             subresult.add((new 
Integer(No)).toString());*/
                                                             
subresult.add(doc.get(entry_medline));
                                                             subresult.add("No 
Id");
                                                             subresult.add("No 
Id");
                                                             float sco = 
hits.score(i);
                                                     
subresult.add(rating);//(hits.score(i));
                                                     
subresult.add(abstract_stream);
                                                     
subresult.add(title_straem);
                                                     subresult.add("No hits for 
this index");
                                                     subresult.add("MEDLINE");
                                                        }
                                        }
                                                                
                        }
[code]
But I get the following error.

Error:

javax.servlet.ServletException: #{suggestBox.Search}:
javax.faces.el.EvaluationException: java.lang.LinkageError: Class
org/apache/lucene/search/Query violates loader constraints
javax.faces.webapp.FacesServlet.service(FacesServlet.java:209)
org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.j
ava:96)
org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)

Does someone know what I am doing wrong?
-- 
View this message in context: 
http://www.nabble.com/Lucene-Highlighter-linkage-Error-tf4142164.html#a11782482
Sent from the Lucene - Java Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to