Yes, this is a pure CLASSPATH issue.  I haven't built a Nutch war in a while, 
so I don't recall what is in it, but most likely it has WEB-INF/lib directory 
with some jar files.  One of these .... ah, let's just see.  Here:

[EMAIL PROTECTED] trunk]$ unzip -l build/nutch-1.0-dev.war | grep jar | grep -v 
plugin
   125955  08-03-06 22:55   WEB-INF/lib/commons-cli-2.0-SNAPSHOT.jar
   207723  09-10-05 11:34   WEB-INF/lib/commons-lang-2.1.jar
    34242  03-28-07 00:02   WEB-INF/lib/commons-logging-1.0.4.jar
    26202  07-16-05 13:59   WEB-INF/lib/commons-logging-api-1.0.4.jar
  1707358  02-18-08 00:55   WEB-INF/lib/hadoop-0.16.0-core.jar
   358180  06-27-06 11:55   WEB-INF/lib/log4j-1.2.13.jar
   664675  02-18-08 00:55   WEB-INF/lib/lucene-core-2.3.0.jar
    48567  02-18-08 00:55   WEB-INF/lib/lucene-misc-2.3.0.jar
    29558  07-16-05 13:59   WEB-INF/lib/taglibs-i18n.jar
   113156  02-18-08 00:55   WEB-INF/lib/tika-0.1-incubating.jar
   124724  07-16-05 13:59   WEB-INF/lib/xerces-2_6_2-apis.jar
  1010675  07-16-05 13:59   WEB-INF/lib/xerces-2_6_2.jar
   550411  06-16-08 22:17   WEB-INF/lib/nutch-1.0-dev.jar


Note this last jar.  That's what you'll want to have, because that has 
CommonGrams:

[EMAIL PROTECTED] trunk]$ unzip build/nutch-1.0-dev.jar | grep Common
  inflating: org/apache/nutch/analysis/CommonGrams$ArrayTokens.class  
  inflating: org/apache/nutch/analysis/CommonGrams$Filter.class  
  inflating: org/apache/nutch/analysis/CommonGrams.class  
  inflating: org/apache/nutch/metadata/CreativeCommons.class

I built my Nutch war with "ant war".


Otis
--
Sematext -- http://sematext.com/ -- Lucene - Solr - Nutch


----- Original Message ----
> From: John Thompson <[EMAIL PROTECTED]>
> To: [email protected]
> Sent: Monday, June 16, 2008 3:48:56 PM
> Subject: ClassNotFoundException: org.apache.nutch.analysis.CommonGrams
> 
> Hi,
> 
> I've been trying to debug this problem for the past few days in my recently
> set up Nutch installation.  Essentially, the main page, about page, and help
> page are fine, but as soon as I try to submit a search query, I get the
> following stack trace (sorry for the length):
> 
> *exception*
> 
> org.apache.jasper.JasperException: org/apache/nutch/analysis/CommonGrams
>     
> org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:460)
>     
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355)
>     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
>     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>     sun.reflect.GeneratedMethodAccessor48.invoke(Unknown Source)
>     
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     java.lang.reflect.Method.invoke(Method.java:597)
>     org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:244)
>     java.security.AccessController.doPrivileged(Native Method)
>     javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
>     org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:276)
>     
> org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
> 
> *root cause*
> 
> javax.servlet.ServletException: org/apache/nutch/analysis/CommonGrams
>     
> org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:841)
>     
> org.apache.jasper.runtime.PageContextImpl.access$11(PageContextImpl.java:779)
>     org.apache.jasper.runtime.PageContextImpl$12.run(PageContextImpl.java:761)
>     java.security.AccessController.doPrivileged(Native Method)
>     
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:759)
>     org.apache.jsp.search_jsp._jspService(search_jsp.java:777)
>     org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>     
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
>     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
>     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>     sun.reflect.GeneratedMethodAccessor48.invoke(Unknown Source)
>     
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     java.lang.reflect.Method.invoke(Method.java:597)
>     org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:244)
>     java.security.AccessController.doPrivileged(Native Method)
>     javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
>     org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:276)
>     
> org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
> 
> *root cause*
> 
> java.lang.NoClassDefFoundError: org/apache/nutch/analysis/CommonGrams
>     
> org.apache.nutch.searcher.FieldQueryFilter.setConf(FieldQueryFilter.java:108)
>     
> org.apache.nutch.searcher.url.URLQueryFilter.setConf(URLQueryFilter.java:34)
>     org.apache.nutch.plugin.Extension.getExtensionInstance(Extension.java:162)
>     org.apache.nutch.searcher.QueryFilters.(QueryFilters.java:76)
>     org.apache.nutch.searcher.IndexSearcher.init(IndexSearcher.java:79)
>     org.apache.nutch.searcher.IndexSearcher.(IndexSearcher.java:63)
>     org.apache.nutch.searcher.NutchBean.init(NutchBean.java:140)
>     org.apache.nutch.searcher.NutchBean.(NutchBean.java:106)
>     org.apache.nutch.searcher.NutchBean.(NutchBean.java:84)
>     org.apache.nutch.searcher.NutchBean.get(NutchBean.java:71)
>     org.apache.jsp.search_jsp._jspService(search_jsp.java:106)
>     org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>     
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
>     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
>     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
>     javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>     sun.reflect.GeneratedMethodAccessor48.invoke(Unknown Source)
>     
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     java.lang.reflect.Method.invoke(Method.java:597)
>     org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:244)
>     java.security.AccessController.doPrivileged(Native Method)
>     javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
>     org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:276)
>     
> org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
> 
> Could this be a classpath problem?  My setup may be a little peculiar.  My
> site information is located at:
> 
> /usr/share/tomcat5.5-webapps/site_name
> 
> But I've appropriately specified that as the docBase at:
> 
> /usr/share/tomcat5.5/conf/Catalina/localhost/site_name.xml
> 
> so that shouldn't be a problem.
> 
> Inside
> 
> /usr/share/tomcat5.5-webapps/site_name
> 
> I've just unpacked nutch-0.9.war, which I got from the tarball at the Nutch
> site.  The only modifications I've made there are related to doctype issues
> because a few of the xml files were apparently incompatible with Java 6.
> That should be irrelevant to the current problem.
> 
> So I guess the question is where is Nutch expecting to find
> CommonGrams.class?
> 
> Best,
> John

Reply via email to