Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4823357
  • 博文数量: 930
  • 博客积分: 12070
  • 博客等级: 上将
  • 技术积分: 11448
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-15 16:57
文章分类

全部博文(930)

文章存档

2011年(60)

2010年(220)

2009年(371)

2008年(279)

分类:

2009-01-02 11:43:53

这篇主要记录下,我自己使用过程中遇到的问题以及解决方案:
1. 在Nutch的搜索框中输入中文变成乱码的问题。问题是由Tomcat引起的,只要在Tomcat的conf\server.xml指定编码便可解决问题,修改后的内容如下:

<Connector 
    
port="8080" 
    protocol
="HTTP/1.1" 
    connectionTimeout
="20000" 
    redirectPort
="8443" 
    URIEncoding
="UTF-8" 
    useBodyEncodingForURI
="true" />

其中URIEncoding="UTF-8"和useBodyEncodingForURI="true"是要添加的内容。

2. 错误信息:
Stopping at depth=0 - no more URLs to fetch.
No URLs to fetch - check your seed list and URL filters.

你漏了在conf/crawl-urlfilter.txt中设置搜索范围,详见上篇。

3. 错误信息:
failed with: java.lang.RuntimeException: Agent name not configured!

你漏了设置爬虫的Agent信息,详见上篇。
 
4.执行查询时候出现这个错误

HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: /search.jsp(151,22) Attribute value language + "/include/header.html" is quoted with " which must be escaped when used within the value
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
分析:查看nutch Web应用根目录下的search.jsp可知,是引号匹配的问题。

"<%= language + "/include/header.html"%>"/>  //line 152 search.jsp

第一个引号和后面第一个出现的引号进行匹配,而不是和这一行最后一个引号进行匹配,所以问题就出现了。

解决方法:

将该行代码修改为:

这里我们定一个字符串urlsuffix,我们把它定义在language字符串定义之后,

  String language =   // line 116 search.jsp
    ResourceBundle.getBundle("org.nutch.jsp.search", request.getLocale())
    .getLocale().getLanguage();
 String urlsuffix="/include/header.html";

修改完成后,为确保修改成功,重启一下Tomcat服务器,进行搜索,不再报错。

贴个我大功告成后的图: happy中,毕业设计终于有点小眉目了.虽然一直很BS win但是毕业设计回归win还是发现N多好处的^_^.开始学习nutch+aglet

 

 

阅读(4175) | 评论(13) | 转发(0) |