lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Grant Ingersoll <grant.ingers...@gmail.com>
Subject Re: help!!!!
Date Sun, 11 Mar 2007 13:58:23 GMT
Looks like the Lucene libraries are not in your classpath.

On Mar 11, 2007, at 12:08 AM, ashwin kumar wrote:

> hi all my name is ashwin i am trying to connect my servlet front  
> end to my
> backend lucene search program
>
> these r the two programs
>
>
> <<frontend servlet program>>
>
> import javax.servlet.*;
> import javax.servlet.http.*;
> import java.io.*;
> import java.lang.*;
>
> //import java.io.*;
> import java.io.FileReader;
> import java.io.Reader;
> import java.util.Date;
> //import frontend.mainpage;
> import java.lang.*;
>
> import org.apache.lucene.analysis.Analyzer;
> import org.apache.lucene.analysis.standard.StandardAnalyzer;
> import org.apache.lucene.document.Document;
> import org.apache.lucene.document.Field;
> import org.apache.lucene.index.IndexWriter;
> import org.apache.lucene.search.IndexSearcher;
> import org.apache.lucene.search.Searchable;
> import org.apache.lucene.search.Searcher;
> import org.apache.lucene.queryParser.QueryParser;
> import org.apache.lucene.search.Hits;
> import org.apache.lucene.search.Query;
>
> public class mainpage extends HttpServlet
> {
>    static int numRequest=0;
>
>    public void init(ServletConfig config)throws ServletException
>    {
>        super.init(config);
>    }
>
>
>
>    public void doGet(HttpServletRequest req,HttpServletResponse res) 
> throws
> ServletException,IOException
>    {
>        try
>        {
>            res.setContentType("text/html");
>
>
>            PrintWriter out=res.getWriter();
>
>
>
>
>             out.println("<html><head><title>testing</title></head>");
>
>            out.println("<body>");
>
>             out.println("<h1>Distrubuted Desktop Search using
> lucene</h1>");
>
>              TextFileIndexer index=new TextFileIndexer(out);
>
>            out.println("<br><form method=\"post\">");
>
>            out.println("<input type=\"text\" name =\"toSearch\"  
> size=100
> maxlength=100>");
>
>            out.println(" <input type=\"submit\" name=\"searchbutton\"
> value=\"search\"><br>");
>
>            out.println("</form>");
>
>            out.println("</body></html>");
>            out.close();
>        }
>        catch(Exception e)
>        {
>            e.printStackTrace();
>        }
>
>
>    }
>
>    public String getServletInfo()
>    {
>        return "good";
>    }
>
>    public void doPost(HttpServletRequest req,HttpServletResponse  
> res)throws
> ServletException, IOException
>    {
>        try
>        {
>            res.setContentType("text/html");
>
>            String searchString = req.getParameter("toSearch");
>
>            PrintWriter out=res.getWriter();
>
>            out.println("<head><title>testing</title></head>");
>
>            out.println("<body>");
>
>            out.println("<h1>"+searchString+"</h1>");
>
>            TextFileMatch match=new TextFileMatch(searchString,out);
>
>            out.println("</body></html>");
>
>            out.close();
>        }
>        catch(Exception e)
>        {
>            e.printStackTrace();
>        }
>
>    }
>    public void destroy()
>    {
>
>    }
> }
>
>
> <<backend lucene search program>>
>
> import java.io.*;
> import java.io.FileReader;
> import java.io.Reader;
> import java.util.Date;
> //import frontend.mainpage;
> import java.lang.*;
>
> import org.apache.lucene.analysis.Analyzer;
> import org.apache.lucene.analysis.standard.StandardAnalyzer;
> import org.apache.lucene.document.Document;
> import org.apache.lucene.document.Field;
> import org.apache.lucene.index.IndexWriter;
> import org.apache.lucene.search.IndexSearcher;
> import org.apache.lucene.search.Searchable;
> import org.apache.lucene.search.Searcher;
> import org.apache.lucene.queryParser.QueryParser;
> import org.apache.lucene.search.Hits;
> import org.apache.lucene.search.Query;
>
> class TextFileMatch
> {
>    public TextFileMatch(String searchString,PrintWriter out)throws
> Exception
>    {
>          Searcher searcher = new IndexSearcher("C:\\luceneIndex");
>         Analyzer analyzer = new StandardAnalyzer();
>
>         String toSearch=searchString;
>         String buffer=new String("");
>
>         System.out.println("\n"+toSearch+"\n");
>
>           Query query = QueryParser.parse 
> (toSearch,"content",analyzer);
>          out.println("Searching for: " + query.toString("text"));
>          Hits hits = searcher.search(query);
>          System.out.println("Number of matching documents = " +  
> hits.length
> ());
>           for (int i = 0; i < hits.length(); i++)
>            {
>             Document doc = hits.doc(i);
>             //buffer=buffer+"\n"+"file :"+doc.get("path")+"\n";
>              out.println("File: " + doc.get("path") +   "  ,    
> score: " +
> hits.score(i));
>          }
>    }
> }
>
> class TextFileIndexer
> {
> public TextFileIndexer(PrintWriter out) throws Exception
> {
>
>    out.println("*************");
>   File fileDir= new File("C:\\files");
>
>   File indexDir= new File("C:\\luceneIndex");
>
>   Boolean flag=false;
>
>   Analyzer luceneAnalyzer = new StandardAnalyzer();
>
>
>   IndexWriter indexWriter = new IndexWriter 
> (indexDir,luceneAnalyzer,true);
>
>   File[] textFiles= fileDir.listFiles();
>
>   long startTime = new Date().getTime();
>
>   System.out.println("\n the total number of files in the directory is
> "+textFiles.length+"\n");
>
>   for(int i = 0; i < textFiles.length; i++)
>   {
>
>       if(textFiles[i].getName().endsWith(".txt"))
>       {
>            System.out.println("\n File " +
> textFiles[i].getCanonicalPath()+" is being indexed");
>         Reader textReader = new FileReader(textFiles[i]);
>         Document document = new Document();
>         document.add(Field.Text("content",textReader));
>         document.add(Field.Text("path",textFiles[i].getPath()));
>         indexWriter.addDocument(document);
>
>       }
>       else if(textFiles[i].getName().endsWith(".pdf"))
>       {
>
>
>       }
>
>   }
>
>   indexWriter.optimize();
>   indexWriter.close();
>   long endTime = new Date().getTime();
>
>   System.out.println("It took " + (endTime - startTime) + "  
> milliseconds to
> create an index for the files in the directory "+ fileDir.getPath());
>  }
> }
>
>
>
> <<note>>
> all programs and class files are inside a same folder
>
> the error msg i am getting is
>
> HTTP Status 500 -
> ------------------------------
>
> *type* Exception report
>
> *message*
>
> *description* *The server encountered an internal error () that  
> prevented it
> from fulfilling this request.*
>
> *exception*
>
> javax.servlet.ServletException: Servlet execution threw an exception
> 	filters.ExampleFilter.doFilter(ExampleFilter.java:101)
>
> *root cause*
>
> java.lang.NoClassDefFoundError: org/apache/lucene/analysis/Analyzer
> 	mainpage.doGet(mainpage.java:54)
> 	javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> 	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> 	filters.ExampleFilter.doFilter(ExampleFilter.java:101)
>
> *note* *The full stack trace of the root cause is available in the  
> Apache
> Tomcat/5.5.8 logs.*
> ------------------------------
> Apache Tomcat/5.5.8
> pls help me debug this error
>
> thanks
> regards
> ashwin

------------------------------------------------------
Grant Ingersoll
http://www.grantingersoll.com/
http://lucene.grantingersoll.com
http://www.paperoftheweek.com/



---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message