<?xml version="1.0" encoding="UTF-8"?>







<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/">

  <channel rdf:about="http://www.searchfull.net:80/blog/">
    <title>搜斧SearchFull - Java技术 category</title>
    <link>http://www.searchfull.net:80/blog/</link>
    <description>专注于Java技术、开源项目、项目管理</description>
    <items>
      <rdf:Seq>
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/11/17/1226894401267.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/11/17/1226883101364.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/11/08/1226122313004.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/10/30/1225354103469.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/10/11/1223719472958.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/10/09/1223560255750.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/10/07/1223367791992.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/09/28/1222565801018.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/07/24/1216869277428.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/07/24/1216867477617.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/07/20/1216519264802.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/07/15/1216099910872.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/07/14/1216008211518.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/07/12/1215825054079.html" />
        
        <rdf:li resource="http://www.searchfull.net:80/blog/2008/07/09/1215582119630.html" />
        
      </rdf:Seq>
    </items>
  </channel>

  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/11/17/1226894401267.html">
    <title>我收藏的链接（30）</title>
    <link>http://www.searchfull.net:80/blog/2008/11/17/1226894401267.html</link>
    
      
        <description>
          &lt;dt&gt;&lt;a last_visit=&#034;1226838496&#034; add_date=&#034;1226838496&#034; tags=&#034;xp&#034; href=&#034;http://scrumxp.blogspot.com/&#034;&gt;敏捷软件开发随笔-----敏捷精灵二三事&lt;/a&gt; &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226838182&#034; add_date=&#034;1226838182&#034; tags=&#034;xp&#034; href=&#034;http://c2.com/cgi/wiki?KentBeck&#034;&gt;Kent Beck&lt;/a&gt; &lt;/dt&gt;&lt;dd&gt;Kent Beck is an American software engineer and the creator of Extreme Programming &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226825571&#034; add_date=&#034;1226825571&#034; tags=&#034;xp&#034; href=&#034;http://www.martinfowler.com/&#034;&gt;Martin Fowler&lt;/a&gt; &lt;/dt&gt;&lt;dd&gt;XP 敏捷大师 Martin Fowler &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226718357&#034; add_date=&#034;1226718357&#034; tags=&#034;framework,RIA&#034; href=&#034;http://puremvc.org/component/option,com_frontpage/Itemid,1/&#034;&gt;PureMVC - Home&lt;/a&gt; &lt;/dt&gt;&lt;dd&gt;一个MVC的RIA框架 &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226717636&#034; add_date=&#034;1226717636&#034; tags=&#034;xp&#034; href=&#034;http://www.infoq.com/cn/news/2008/11/agile-infrastructure-made-easy&#034;&gt;InfoQ: 将敏捷团队从基础工具环境搭建中解脱出来&lt;/a&gt; &lt;/dt&gt;&lt;dd&gt;敏捷项目管理工具环境搭建 &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226654160&#034; add_date=&#034;1226654160&#034; tags=&#034;jdbc,java&#034; href=&#034;http://www.ibm.com/developerworks/cn/java/j-lo-jdbcproxy/index.html?ca=drs-cn-1114&#034;&gt;使用 JdbcProxy 测试 Java 应用程序&lt;/a&gt; &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226654074&#034; add_date=&#034;1226654074&#034; tags=&#034;css,html&#034; href=&#034;http://www.ncdesign.org/html/s030col.htm&#034;&gt;NCDesign Style Sheet Guide - COLOR &amp;amp; BACKGROUND&lt;/a&gt; &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226563999&#034; add_date=&#034;1226563999&#034; tags=&#034;wap&#034; href=&#034;http://www.ibm.com/developerworks/cn/xml/x-wbmp/index.html&#034;&gt;产生跨平台的 WBMP&lt;/a&gt; &lt;/dt&gt;&lt;dd&gt;wml1.1中使用wbmp图片格式 &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226563838&#034; add_date=&#034;1226563838&#034; tags=&#034;wap&#034; href=&#034;http://haka.sharera.com/blog/BlogTopic/17629.htm&#034;&gt;无所事事|XHTML针对WAP页面的设计&lt;/a&gt; &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226470670&#034; add_date=&#034;1226470670&#034; tags=&#034;search,lucene&#034; href=&#034;http://wiki.apache.org/jakarta-lucene/PoweredBy&#034;&gt;PoweredBy - Lucene-java Wiki&lt;/a&gt; &lt;/dt&gt;&lt;dd&gt;用Lucene开发的软件产品 &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226470626&#034; add_date=&#034;1226470626&#034; tags=&#034;wap,google&#034; href=&#034;http://code.google.com/android/download.html&#034;&gt;Download the Android SDK - Android&lt;/a&gt; &lt;/dt&gt;&lt;dd&gt;Google手机GPhone操作系统Android模拟器下载 &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226461573&#034; add_date=&#034;1226461573&#034; tags=&#034;java&#034; href=&#034;http://jphotoalbum.jpkware.com/&#034;&gt;JPhotoAlbum - a free open source Java Photo Album organizer/editor/publisher&lt;/a&gt; &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226455998&#034; add_date=&#034;1226455998&#034; tags=&#034;life&#034; href=&#034;http://card.gz.gov.cn/vfs/web/card.htm&#034;&gt;广州市公众信息服务网 - 广州社会保障卡&lt;/a&gt; &lt;/dt&gt;
        </description>
      
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/11/17/1226883101364.html">
    <title>如何提高Java EE程序调试的效率</title>
    <link>http://www.searchfull.net:80/blog/2008/11/17/1226883101364.html</link>
    
      
        <description>
          &lt;p&gt;&lt;a href=&#034;http://www.searchfull.net/blog/2008/11/17/1226883101364.html&#034;&gt;如何提高Java EE程序调试的效率？&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;如何进行Java EE程序调试，国内普遍的做法好像是，修改代码&amp;mdash;&amp;mdash;&amp;gt;编译&amp;mdash;&amp;mdash;&amp;gt;部署&amp;mdash;&amp;mdash;&amp;gt;重启应用服务器&amp;mdash;&amp;mdash;&amp;gt;手工访问程序验证结果。&lt;br /&gt;
但是我总结一下其实有好几种办法提高和改善程序调试的效率：&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;基于&lt;a href=&#034;http://www.junit.org&#034;&gt;单元测试&lt;/a&gt;开发，单元测试可以脱离应用服务器环境来运行 &lt;/li&gt;
    &lt;li&gt;基于&lt;a href=&#034;http://java.sun.com/javase/technologies/core/toolsapis/jpda&#034;&gt;JPDA&lt;/a&gt;使用Eclipse等IDE的Debug功能进行远程调试 &lt;/li&gt;
    &lt;li&gt;使用支持热部署的应用开发框架，如Tapestry5等；或者使用&lt;a href=&#034;http://www.zeroturnaround.com/javarebel&#034;&gt;JavaRebel &lt;/a&gt;JVM插件技术来实时刷新代码修改&lt;/li&gt;
    &lt;li&gt;学习开发技术和&lt;a href=&#034;http://java.sun.com/j2se/1.5.0/docs/api/&#034;&gt;API&lt;/a&gt;的基础知识，尽量减少调试次数。 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;我个人觉得终结的解决方法还是测试驱动开发。&lt;/p&gt;
        </description>
      
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/11/08/1226122313004.html">
    <title>我收藏的链接（29）</title>
    <link>http://www.searchfull.net:80/blog/2008/11/08/1226122313004.html</link>
    
      
        <description>
          &lt;dl&gt;&lt;dt&gt;&lt;a last_visit=&#034;1226064946&#034; add_date=&#034;1226064946&#034; tags=&#034;lucene&#034; href=&#034;http://www.ibm.com/developerworks/cn/opensource/os-cn-lucene-pl/index.html?ca=drs-cn-1106&#034;&gt;Lucene Payload  的研究与应用&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225719523&#034; add_date=&#034;1225719523&#034; tags=&#034;ejb3&#034; href=&#034;http://www.javaworld.com/javaworld/jw-10-2008/jw-10-ejb3.html&#034;&gt;EJB 3: From legacy  technology to secret weapon - JavaWorld&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225694530&#034; add_date=&#034;1225694530&#034; tags=&#034;seam&#034; href=&#034;http://www.jboss.org/feeds/post/using_a_seam_gen_project_in_jboss_tools&#034;&gt;Using a seam-gen  project in JBoss Tools&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Using a seam-gen project in JBoss Tools  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225694231&#034; add_date=&#034;1225694231&#034; tags=&#034;ajax&#034; href=&#034;http://aptana.com/&#034;&gt;Aptana&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;基于Eclipse的开发工具，支持Ajax，RIA  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225684716&#034; add_date=&#034;1225684716&#034; tags=&#034;java,concurrent&#034; href=&#034;http://www.ibm.com/developerworks/cn/java/j-tiger06164/&#034;&gt;驯服 Tiger:  并发集合&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225607532&#034; add_date=&#034;1225607532&#034; tags=&#034;ajax&#034; href=&#034;http://code.google.com/p/jqgrid/&#034;&gt;jqgrid - Google Code&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;jqgrid - jquery grid  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225604215&#034; add_date=&#034;1225604215&#034; tags=&#034;java,collection&#034; href=&#034;http://kongjian.baidu.com/manmoon/blog/item/cdf48f540887761c3a29358c.html&#034;&gt;java.util.concurrent系列文章--(1)JDK1.5 并发集合_生活，奋斗，快乐！&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225603974&#034; add_date=&#034;1225603974&#034; tags=&#034;spider&#034; href=&#034;http://news.csdn.net/n/20081031/120440.html&#034;&gt;Web爬行工具HBase-Writer 0.18.1发布 ,  hbase,heritrix2,writer,hadoop,工具,hdfs,发布,爬行,表,存储, , - CSDN 新闻&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225603861&#034; add_date=&#034;1225603861&#034; tags=&#034;java,collection&#034; href=&#034;http://code.google.com/p/google-collections/&#034;&gt;google-collections - Google Code&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225438720&#034; add_date=&#034;1225438720&#034; tags=&#034;spring,hibernate&#034; href=&#034;http://code.google.com/p/j2eedevtools/source/browse/trunk/devtools/src/com/sunwayworld/common/hibernate/HibernateTemplateSpring.java?r=178&#034;&gt;j2eedevtools - Google Code - HibernateTemplate&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;实现saveOrUpdate方法将为空Null的字段不做Update，避免误将非空的字段更新Update为Null.  通过SessionFactory.getClassMetadata方法获得ClassMetadata ，取Entity的主键标识属性 &lt;/dd&gt;&lt;/dl&gt;
        </description>
      
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/10/30/1225354103469.html">
    <title>我收藏的链接（28）</title>
    <link>http://www.searchfull.net:80/blog/2008/10/30/1225354103469.html</link>
    
      
        <description>
          &lt;dl&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225350194&#034; add_date=&#034;1225350194&#034; tags=&#034;wml,wap&#034; href=&#034;http://wapjz.yo2.cn/wap%E6%8A%80%E6%9C%AF/wap%E5%BB%BA%E7%AB%99%E4%B8%8D%E5%AE%B9%E6%98%93%EF%BC%81wapwml%E5%BC%80%E5%8F%91faq.html&#034;&gt;WAP建站不容易！WAP(wml)开发FAQ | wap建站服务网&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225349724&#034; add_date=&#034;1225349724&#034; tags=&#034;wml,wap&#034; href=&#034;http://www.developershome.com/wap/wml/wmlSendingData.asp&#034;&gt;WML Tutorial: Learn  How to Submit Form Data to the Server in WML&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;一个WML文档例子  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225349707&#034; add_date=&#034;1225349707&#034; tags=&#034;wml,wap&#034; href=&#034;http://www.w3schools.com/wap/wml_reference.asp&#034;&gt;WML Reference&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;WML参考文档  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225344214&#034; add_date=&#034;1225344214&#034; tags=&#034;java&#034; href=&#034;http://www.mail-archive.com/jvm-languages@googlegroups.com/msg01073.html&#034;&gt;[jvm-l] Calling  non-Java languages from JavaScript&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;通过web页面上的 JavaScript调用页面上任何的applets  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225336140&#034; add_date=&#034;1225336140&#034; tags=&#034;javascript&#034; href=&#034;http://blog.csdn.net/heiheben/archive/2008/06/24/2582009.aspx&#034;&gt;脚本调试工具 Microsoft  Script Debugger - 河之堤 - CSDNBlog&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1225242184&#034; add_date=&#034;1225242184&#034; tags=&#034;awt&#034; href=&#034;http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6358034&#034;&gt;Bug ID: 6358034 NPE in  Win32GraphicsEnvironment.displayChanged when switching display mode&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;awt-eventqueue-0 win32graphicsenvironment  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224924080&#034; add_date=&#034;1224924080&#034; tags=&#034;architecture&#034; href=&#034;http://www.jroller.com/seam/entry/seam_tutorial_overview&#034;&gt;Seam  Tutorial/Tips : Weblog&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224924073&#034; add_date=&#034;1224924073&#034; tags=&#034;architecture&#034; href=&#034;http://raibledesigns.com/rd/entry/restful_web_applications_with_subbu&#034;&gt;Raible Designs  | RESTful Web Applications with Subbu Allamaraju&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224646487&#034; add_date=&#034;1224646487&#034; tags=&#034;CTI&#034; href=&#034;http://www.ccmw.net/articles/show/70&#034;&gt;剖析CTI软件产品（下） - 客户世界 - 呼叫中心 | 客户管理  | 数据营销 | 服务外包 - [http://www.ccmw.net]&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224646464&#034; add_date=&#034;1224646464&#034; tags=&#034;CTI&#034; href=&#034;http://www.ccmw.net/articles/show/69&#034;&gt;剖析CTI软件产品（上） - 客户世界 - 呼叫中心 | 客户管理  | 数据营销 | 服务外包 - [http://www.ccmw.net]&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224646453&#034; add_date=&#034;1224646453&#034; tags=&#034;tutorials,java&#034; href=&#034;http://developers.sun.com.cn/javapassion/&#034;&gt;JavaPassion 中文站 - 激情无限&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224406502&#034; add_date=&#034;1224406502&#034; tags=&#034;programming&#034; href=&#034;http://news.csdn.net/n/20081017/120020.html&#034;&gt;国际：什么是程序员的优秀品质？ ,  开发者,程序员,实践,代码,测试者,技术,编程,方法,知识,语言, , - CSDN 新闻&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224383404&#034; add_date=&#034;1224383404&#034; tags=&#034;google&#034; href=&#034;http://www.baidutong.com/show-article-26566.html&#034;&gt;探秘Google数据中心：运行服务器远超20万台 -  百度通站长资讯网 通天下站长&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1224252542&#034; add_date=&#034;1224252542&#034; tags=&#034;ant&#034; href=&#034;http://www.infoq.com/cn/news/2008/02/maven-debate&#034;&gt;InfoQ: 辩论：Maven是正确的构建工具吗？&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223993289&#034; add_date=&#034;1223993289&#034; tags=&#034;java&#034; href=&#034;http://enjoyjavaeye.javaeye.com/blog/252851&#034;&gt;整理了一天的JAVA面试题（先保存下） - admin -  JavaEye技术网站&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223964322&#034; add_date=&#034;1223964322&#034; tags=&#034;ajax&#034; href=&#034;http://webplicity.net/flexigrid/&#034;&gt;Flexigrid for jQuery : Web 2.0 Javascript Data Grid&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223955578&#034; add_date=&#034;1223955578&#034; tags=&#034;corba&#034; href=&#034;http://doc.javanb.com/javasdk-docs-1-4-1/guide/idl/INStutorial.html&#034;&gt;Java IDL:  Interoperable Naming Service (INS) Example - JDK 5 Documentation v1.4.1, Java 2  SDK 英文文档 - 在线文档 - JAVA 编程资料牛鼻站&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223955311&#034; add_date=&#034;1223955311&#034; tags=&#034;corba&#034; href=&#034;http://oofrank.bokee.com/1907617.html&#034;&gt;基于JAVA实现CORBA应用--oofrank的博客 oo  java .Net&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223954162&#034; add_date=&#034;1223954162&#034; tags=&#034;corba&#034; href=&#034;http://www.javaeye.com/topic/136723&#034;&gt;Eclipse中corba环境的建立 - 企业应用 - Java -  JavaEye论坛&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223869150&#034; add_date=&#034;1223869150&#034; tags=&#034;GDA,IEC,CIM&#034; href=&#034;http://dlrj.tede.cn/2007/11/119605692246219.html&#034;&gt;应用CIM模型进行系统集成 -  输配电设备网&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223716628&#034; add_date=&#034;1223716628&#034; tags=&#034;java&#034; href=&#034;http://www.zeali.net/entry/395&#034;&gt;ConcurrentModificationException | Zeal Blog -  泽欧里的网络日志&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;java.util.ConcurrentModificationException异常  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223716608&#034; add_date=&#034;1223716608&#034; tags=&#034;java&#034; href=&#034;http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/java/util/ConcurrentModificationException.html&#034;&gt;ConcurrentModificationException (Java 2 Platform SE  5.0)&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;java.util.ConcurrentModificationException异常  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223691129&#034; add_date=&#034;1223691129&#034; tags=&#034;develope&#034; href=&#034;http://www.infoq.com/cn/news/2008/10/measure-programmers-productivity&#034;&gt;InfoQ:  讨论：衡量程序员的工作效率&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223689757&#034; add_date=&#034;1223689757&#034; tags=&#034;j2me,sms&#034; href=&#034;http://www.cnjm.net/tech/article2857.html&#034;&gt;用J2ME收发短信 -- Wireless Messaging  API - 中国JAVA手机网&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223618439&#034; add_date=&#034;1223618439&#034; tags=&#034;jboss,jetty&#034; href=&#034;http://docs.codehaus.org/display/JETTY/JBoss&#034;&gt;JBoss - Jetty - Codehaus&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Jetty JBoss Integration.  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223610504&#034; add_date=&#034;1223610504&#034; tags=&#034;cache&#034; href=&#034;http://www.infoq.com/cn/articles/memcached-java&#034;&gt;InfoQ:  缓存系统MemCached的Java客户端优化历程&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223563270&#034; add_date=&#034;1223563270&#034; tags=&#034;software&#034; href=&#034;http://www.jinghua8.com/?p=1718&#034;&gt;50个Windows软件的免费替代品 |  精华之家|HIGHTHOUSE&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223562602&#034; add_date=&#034;1223562602&#034; tags=&#034;software&#034; href=&#034;http://www.cnblogs.com/sharewind/archive/2008/04/06/1139263.html&#034;&gt;Windows系统必备的30个免费开源软件 (转载) - Free Programming - 博客园&lt;/a&gt; &lt;/dt&gt;&lt;/dl&gt;
        </description>
      
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/10/11/1223719472958.html">
    <title>关于ConcurrentModificationException异常</title>
    <link>http://www.searchfull.net:80/blog/2008/10/11/1223719472958.html</link>
    
      
        <description>
          关于&lt;strong&gt;ConcurrentModificationException&lt;/strong&gt;异常&lt;br /&gt;
&lt;br /&gt;
在Java API里已经解释了这个&lt;a href=&#034;http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/java/util/ConcurrentModificationException.html&#034;&gt;&lt;strong&gt;ConcurrentModificationException&lt;/strong&gt;&lt;/a&gt;异常的来历：&lt;br /&gt;
&lt;blockquote&gt;
&lt;p&gt; 当方法检测到对象的并发修改，但不允许这种修改时，抛出此异常。  &lt;/p&gt;
&lt;p&gt; 例如，某个线程在 Collection 上进行迭代时，通常不允许另一个线程修改该 Collection。通常在这些情况下，迭代的结果是不明确的。如果检测到这种行为，一些迭代器实现（包括 JRE 提供的所有通用 collection 实现）可能选择抛出此异常。执行该操作的迭代器称为&lt;em&gt;快速失败&lt;/em&gt; 迭代器，因为迭代器很快就完全失败，而不会冒着在将来某个时间任意发生不确定行为的风险。  &lt;/p&gt;
&lt;p&gt; 注意，此异常不会始终指出对象已经由&lt;em&gt;不同&lt;/em&gt; 线程并发修改。如果单线程发出违反对象协定的方法调用序列，则该对象可能抛出此异常。例如，如果线程使用快速失败迭代器在 collection 上迭代时直接修改该 collection，则迭代器将抛出此异常。  &lt;/p&gt;
&lt;p&gt;注意，迭代器的fail-fast快速失败行为无法得到保证，因为一般来说，不可能对是否出现不同步并发修改做出任何硬性保证。快速失败操作会尽最大努力抛出 &lt;tt&gt;ConcurrentModificationException&lt;/tt&gt;。因此，为提高此类操作的正确性而编写一个依赖于此异常的程序是错误的做法，正确做法是：&lt;em&gt;&lt;tt&gt;ConcurrentModificationException&lt;/tt&gt; 应该仅用于检测 bug。&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div id=&#034;entry_introduce&#034;&gt;
&lt;div class=&#034;entry_introduce&#034;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 当使用 fail-fast iterator 对 Collection 或 Map 进行迭代操作过程中尝试直接修改 Collection / Map 的内容时，即使是在单线程下运行， &amp;nbsp;java.util.ConcurrentModificationException 异常也将被抛出。&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;　 　Iterator 是工作在一个独立的线程中，并且拥有一个 mutex 锁。 Iterator 被创建之后会建立一个指向原来对象的单链索引表，当原来的对象数量发生变化时，这个索引表的内容不会同步改变，所以当索引指针往后移动的时候就找不到要迭 代的对象，所以按照 fail-fast 原则 Iterator 会马上抛出 java.util.ConcurrentModificationException 异常。&lt;/p&gt;
&lt;p&gt;　　所以 Iterator 在工作的时候是不允许被迭代的对象被改变的。但你可以使用 Iterator 本身的方法 remove() 来删除对象， Iterator.remove() 方法会在删除当前迭代对象的同时维护索引的一致性。&lt;/p&gt;
&lt;p&gt;　　有意思的是如果你的 Collection / Map 对象实际只有一个元素的时候， ConcurrentModificationException 异常并不会被抛出。这也就是为什么&lt;a href=&#034;http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/java/util/ConcurrentModificationException.html&#034; target=&#034;_blank&#034;&gt;在 javadoc 里面指出&lt;/a&gt;： it would be wrong to write a program that depended on this exception for its correctness: &lt;em&gt;&lt;tt&gt;ConcurrentModificationException&lt;/tt&gt; should be used only to detect bugs.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;下面的代码没有问题：&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol class=&#034;dp-j&#034; start=&#034;1&#034;&gt;
    &lt;li&gt;&lt;span&gt;&lt;span class=&#034;keyword&#034;&gt;import&lt;/span&gt;&lt;span&gt;&amp;nbsp;java.util.*;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&lt;span class=&#034;keyword&#034;&gt;public&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&#034;keyword&#034;&gt;class&lt;/span&gt;&lt;span&gt;&amp;nbsp;TryIteratorRemove&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&#034;keyword&#034;&gt;public&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&#034;keyword&#034;&gt;static&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&#034;keyword&#034;&gt;void&lt;/span&gt;&lt;span&gt;&amp;nbsp;main(String&amp;nbsp;[]&amp;nbsp;args){&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Collection&amp;lt;String&amp;gt;&amp;nbsp;myCollection&amp;nbsp;=&amp;nbsp;&lt;span class=&#034;keyword&#034;&gt;new&lt;/span&gt;&lt;span&gt;&amp;nbsp;ArrayList&amp;lt;String&amp;gt;(&lt;/span&gt;&lt;span class=&#034;number&#034;&gt;10&lt;/span&gt;&lt;span&gt;);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myCollection.add(&lt;span class=&#034;string&#034;&gt;&amp;quot;123&amp;quot;&lt;/span&gt;&lt;span&gt;);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myCollection.add(&lt;span class=&#034;string&#034;&gt;&amp;quot;456&amp;quot;&lt;/span&gt;&lt;span&gt;);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myCollection.add(&lt;span class=&#034;string&#034;&gt;&amp;quot;789&amp;quot;&lt;/span&gt;&lt;span&gt;);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&#034;keyword&#034;&gt;int&lt;/span&gt;&lt;span&gt;&amp;nbsp;i=&lt;/span&gt;&lt;span class=&#034;number&#034;&gt;0&lt;/span&gt;&lt;span&gt;;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&#034;keyword&#034;&gt;for&lt;/span&gt;&lt;span&gt;(Iterator&amp;nbsp;it&amp;nbsp;=&amp;nbsp;myCollection.iterator();it.hasNext();)&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;String&amp;nbsp;myObject&amp;nbsp;=&amp;nbsp;(String)it.next();&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(myObject);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;i++;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&#034;keyword&#034;&gt;if&lt;/span&gt;&lt;span&gt;(i==&lt;/span&gt;&lt;span class=&#034;number&#034;&gt;1&lt;/span&gt;&lt;span&gt;){&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&#034;comment&#034;&gt;//myCollection.remove(myObject);&lt;/span&gt;&lt;span&gt;&amp;nbsp; //这行代码有问题，会抛出&lt;/span&gt;&lt;/span&gt;&lt;em&gt;&lt;tt&gt;ConcurrentModificationException&lt;/tt&gt; &lt;/em&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;it.remove();&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span class=&#034;string&#034;&gt;&amp;quot;After&amp;nbsp;remove,the&amp;nbsp;size&amp;nbsp;of&amp;nbsp;myCollection&amp;nbsp;is:&amp;nbsp;&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;nbsp;+&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myCollection.size()+&lt;span class=&#034;string&#034;&gt;&amp;quot;&amp;nbsp;\n&amp;nbsp;and&amp;nbsp;its&amp;nbsp;content&amp;nbsp;is:&amp;nbsp;&amp;quot;&lt;/span&gt;&lt;span&gt;);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class=&#034;keyword&#034;&gt;for&lt;/span&gt;&lt;span&gt;(String&amp;nbsp;s&amp;nbsp;:&amp;nbsp;myCollection){&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(s);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span&gt;}&amp;nbsp; &lt;br /&gt;
    &lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt; &lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;em&gt;&lt;br /&gt;
&lt;/em&gt; &lt;/p&gt;
&lt;strong&gt;&lt;/strong&gt;
&lt;pre&gt;&amp;nbsp;&lt;/pre&gt;
        </description>
      
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/10/09/1223560255750.html">
    <title>我收藏的链接（27）</title>
    <link>http://www.searchfull.net:80/blog/2008/10/09/1223560255750.html</link>
    
      
        <description>
          &lt;dl&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223537751&#034; add_date=&#034;1223537751&#034; tags=&#034;java&#034; href=&#034;http://www.infoq.com/cn/news/2007/05/grails-gathers-steam&#034;&gt;InfoQ: Grails做足功夫  全力迈向1.0版&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223520153&#034; add_date=&#034;1223520153&#034; tags=&#034;GTD&#034; href=&#034;http://live.haliluya.org/weblog/2008/04/10/thunderbird-gmail-gtd/&#034;&gt;让Thunderbird成为GTD工具 at  live@haliluya&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223520145&#034; add_date=&#034;1223520145&#034; tags=&#034;GTD&#034; href=&#034;http://internet.solidot.org/article.pl?sid=06/08/31/0050251&amp;amp;from=rss&#034;&gt;Solidot |  用Gmail做GTD管理&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223517509&#034; add_date=&#034;1223517509&#034; tags=&#034;ebooks&#034; href=&#034;http://www.m10.ir/books.html&#034;&gt;100_Linux_Tips_And_Tricks&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;开发技术以及IT书籍  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223430414&#034; add_date=&#034;1223430414&#034; tags=&#034;javascript&#034; href=&#034;http://www.greywyvern.com/code/js/keyboard.html&#034;&gt;Javascript Graphical / Virtual  Keyboard Interface&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223430408&#034; add_date=&#034;1223430408&#034; tags=&#034;javascript&#034; href=&#034;http://sites.google.com/a/daffodildb.com/study/java-script/java-script-super-advance&#034;&gt;JavaScript  Virtual Keyboard (Study)&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223369602&#034; add_date=&#034;1223369602&#034; tags=&#034;quartz&#034; href=&#034;http://java-x.blogspot.com/2006/12/using-quartz-scheduler-in-cluster.html&#034;&gt;Abhi On Java: Using  Quartz Scheduler in a cluster&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223362973&#034; add_date=&#034;1223362973&#034; tags=&#034;gtd&#034; href=&#034;http://gtd.jeffsandquist.com/Default.aspx?Page=GTDTools&amp;amp;AspxAutoDetectCookieSupport=1&#034;&gt;Tools for Getting  Things Done - Getting Things Done Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Tools for GTD (Getting Things Done)  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223197519&#034; add_date=&#034;1223197519&#034; tags=&#034;blog&#034; href=&#034;http://www.bbon.cn/2008/02/%E4%B8%83%E5%A4%A7%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E%E7%9A%84%E5%8D%9A%E5%AE%A2%E6%8F%90%E4%BA%A4%E5%85%A5%E5%8F%A3%E5%88%97%E8%A1%A8.html/&#034;&gt;七大搜索引擎博客搜索的博客提交入口网址 -  菠菜博&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223177510&#034; add_date=&#034;1223177510&#034; tags=&#034;web&#034; href=&#034;http://news.csdn.net/n/20081004/119597.html&#034;&gt;Web 领域25个最有影响力的人(上) ,  huffington,bezos,创办,创业,领域,baker,ballmer,投资,ceo,微软, , - CSDN 新闻&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223124866&#034; add_date=&#034;1223124866&#034; tags=&#034;testing&#034; href=&#034;http://www.infoq.com/cn/news/2008/10/qualities_good_test&#034;&gt;InfoQ:  好的测试应该具备哪些特质？&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223106069&#034; add_date=&#034;1223106069&#034; tags=&#034;CRM&#034; href=&#034;http://www.hipergate.org/&#034;&gt;hipergate :. Free Open Source CRM Groupware and Intranet  Software&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1223023723&#034; add_date=&#034;1223023723&#034; tags=&#034;Scrum&#034; href=&#034;http://www-128.ibm.com/developerworks/cn/rational/rationaledge/content/apr05/krebs/&#034;&gt;RUP与Scrum的对话&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1222933951&#034; add_date=&#034;1222933951&#034; tags=&#034;database,b-tree&#034; href=&#034;http://www.bluerwhite.org/btree/&#034;&gt;B-Trees&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1222917652&#034; add_date=&#034;1222917652&#034; tags=&#034;search&#034; href=&#034;http://blog.csdn.net/gdsean/archive/2003/11/13/6338.aspx&#034;&gt;jdbm开源文件数据库在全文检索中的使用  - gdsean的专栏 - CSDNBlog&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1222911049&#034; add_date=&#034;1222911049&#034; tags=&#034;yui&#034; href=&#034;http://developer.yahoo.com/yui/docs/YAHOO.widget.TextNode.html&#034;&gt;API: treeview  YAHOO.widget.TextNode (YUI Library)&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;yui tree组件 API  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1222673892&#034; add_date=&#034;1222673892&#034; tags=&#034;brand&#034; href=&#034;http://brand.icxo.com/summit/2008world500/top500_1.htm&#034;&gt;2008年(第五届)《世界品牌500强》排行榜&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;2008年《世界品牌500强》排行榜 名单  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1222416484&#034; add_date=&#034;1222416484&#034; tags=&#034;jquery&#034; href=&#034;http://www.kollermedia.at/archive/2007/11/21/the-ultimate-jquery-plugin-list/&#034;&gt;The ultimate jQuery  Plugin List | Kollermedia.at&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;jquery插件  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1222415515&#034; add_date=&#034;1222415515&#034; tags=&#034;ajax,eclipse&#034; href=&#034;http://www.aptana.com/studio&#034;&gt;Aptana Studio | Aptana&lt;/a&gt; &lt;/dt&gt;&lt;/dl&gt;
        </description>
      
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/10/07/1223367791992.html">
    <title>在Spring中使用Quartz任务调度支持集群</title>
    <link>http://www.searchfull.net:80/blog/2008/10/07/1223367791992.html</link>
    
      
      
        <description>
          &lt;p&gt;虽然在&lt;a href=&#034;http://www.opensymphony.com/quartz/&#034;&gt;Quartz&lt;/a&gt;上有&lt;a title=&#034;0.41849995&#034; href=&#034;http://www.searchfull.net/blog/2008/03/08/1204966617410.html&#034;&gt;配置Quartz集群Clustering&lt;/a&gt; ，但是在Spring中使用Q&lt;font face=&#034;Arial&#034;&gt;uartz任务调度并支持集群系统却有些问题，下面介绍解决办法：&lt;/font&gt;&lt;/p&gt;
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/10/07/1223367791992.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/09/28/1222565801018.html">
    <title>一个解析日期时间格式的Java类源代码</title>
    <link>http://www.searchfull.net:80/blog/2008/09/28/1222565801018.html</link>
    
      
      
        <description>
          一个解析日期时间格式的Java类源代码
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/09/28/1222565801018.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/07/24/1216869277428.html">
    <title>使用nekohtml完全控制并修整html</title>
    <link>http://www.searchfull.net:80/blog/2008/07/24/1216869277428.html</link>
    
      
      
        <description>
          除了&lt;a href=&#034;http://tidy.sourceforge.net&#034;&gt;Tidy&lt;/a&gt;和&lt;a href=&#034;http://htmlcleaner.sourceforge.net/ &#034;&gt;HtmlCleaner&lt;/a&gt;，还可以使用&lt;a href=&#034;http://sourceforge.net/projects/nekohtml&#034;&gt;nekohtml&lt;/a&gt;完全解析、控制并修整html标签内容。&lt;br /&gt;
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/07/24/1216869277428.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/07/24/1216867477617.html">
    <title>Ubuntu安装memcached的“C compiler cannot create executables”问题</title>
    <link>http://www.searchfull.net:80/blog/2008/07/24/1216867477617.html</link>
    
      
      
        <description>
          On &lt;strong&gt;debian&lt;/strong&gt;:&lt;br /&gt;
sudo apt-get update &amp;amp;&amp;amp; sudo apt-get dist-upgrade&lt;br /&gt;
&lt;br /&gt;
apt-get install libc6-dev&lt;br /&gt;
&lt;br /&gt;
$ apt-get install libc6-dev g++ gcc
&lt;br /&gt;
On &lt;strong&gt;Fedora&lt;/strong&gt;:&lt;br /&gt;
&lt;br /&gt;
$ locate crt1.o &lt;br /&gt;
/usr/lib/crt1.o
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/07/24/1216867477617.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/07/20/1216519264802.html">
    <title>在AppModule里配置Tapestry5支持UTF-8国际化和Servlet开发</title>
    <link>http://www.searchfull.net:80/blog/2008/07/20/1216519264802.html</link>
    
      
      
        <description>
          &lt;div class=&#034;section&#034;&gt;
&lt;p&gt;Tapestry5必须有一个&amp;quot;module builder class&amp;quot;，很典型地，经常是叫&amp;quot;AppModule&amp;quot;，AppModule经常用来定义一些新服务、覆盖原始服务、或者为服务更改配置。常用的是让Tapestry5支持UTF-8的request Encoding、忽略一些路径过滤来支持Servlet和其他Servlet Filter的开发等。下面的代码可以加在AppModule中：&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;Tapestry5通过在web.xml下定义tapestry.app-package指向的Java包里寻找AppModule，也就是&amp;lt;filter-name&amp;gt;加上&amp;quot;Module&amp;quot;字符。&lt;/p&gt;
&lt;p&gt;下面是官方文档里&lt;a href=&#034;http://tapestry.apache.org/tapestry5/tapestry-core/guide/conf.html&#034;&gt;Tapsetry IoC 配置&lt;/a&gt;：&lt;/p&gt;
&lt;h3&gt;Tapestry IoC Configuration&lt;/h3&gt;
&lt;p&gt;Most other configuration occurs inside your application&#039;s module builder class. The application module builder will often define new services, provide overrides of services, or make contributions to service configurations.&lt;/p&gt;
&lt;p&gt;Tapestry looks for a module builder class in the services package (under the root package). It capitalizes the &amp;lt;filter-name&amp;gt; and appends &amp;quot;Module&amp;quot;. In the previous example, the module builder class would be org.example.myapp.services.AppModule.&lt;/p&gt;
&lt;p&gt;If such a class exists, it is added to the IoC Registry. It is not an error for your application to not have a module, though any non-trivial application will have a module.&lt;/p&gt;
&lt;/div&gt;
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/07/20/1216519264802.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/07/15/1216099910872.html">
    <title>我收藏的链接（24）</title>
    <link>http://www.searchfull.net:80/blog/2008/07/15/1216099910872.html</link>
    
      
        <description>
          &lt;dl&gt;&lt;dt&gt;&lt;a last_visit=&#034;1216094419&#034; add_date=&#034;1216094419&#034; tags=&#034;tapestry&#034; href=&#034;http://code.google.com/hosting/search?q=label:tapestry5&#034;&gt;Google Code -  tapestry5&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;tapestry5代码  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1216092277&#034; add_date=&#034;1216092277&#034; tags=&#034;tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5HowToCreatePieChartsInAPage&#034;&gt;Tapestry5HowToCreatePieChartsInAPage - Tapestry Wiki&lt;/a&gt;   &lt;/dt&gt;&lt;dd&gt;Tapestry5创建动态jfreechart图表  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1216024709&#034; add_date=&#034;1216024709&#034; tags=&#034;Tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5HowToCreateADynamicPDF&#034;&gt;Tapestry5HowToCreateADynamicPDF - Tapestry Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Tapestry5动态创建下载PDF文件  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1216024689&#034; add_date=&#034;1216024689&#034; tags=&#034;Tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5HowToStreamAnExistingBinaryFile&#034;&gt;Tapestry5HowToStreamAnExistingBinaryFile - Tapestry  Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Tapestry5使用StreamResponse下载文件  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1216008414&#034; add_date=&#034;1216008414&#034; tags=&#034;tapestry,grid&#034; href=&#034;http://extjs.com/forum/showthread.php?t=30595&#034;&gt;extjs2+tapestry5.11+spring+hibernate(grid,paging.. ....)  - Ext JS Forums&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215998484&#034; add_date=&#034;1215998484&#034; tags=&#034;Tapestry&#034; href=&#034;http://tapestry.apache.org/tapestry5/tapestry-core/guide/conf.html&#034;&gt;Tapestry Core -  Configuring Tapestry&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Ignored Paths,配置Tapestry5忽略某URL PATH路径，支持Servlet开发  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215958139&#034; add_date=&#034;1215958139&#034; tags=&#034;testing&#034; href=&#034;http://www.blogjava.net/chelsea/archive/2008/07/13/214623.html&#034;&gt;敏捷质疑: TDD - 切尔斯基 -  BlogJava&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215934404&#034; add_date=&#034;1215934404&#034; tags=&#034;grid&#034; href=&#034;http://extremecomp.sourceforge.net/&#034;&gt;Maven -eXtremeComponents&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215917156&#034; add_date=&#034;1215917156&#034; tags=&#034;acegi,tapestry&#034; href=&#034;http://wiki.interldap.objectweb.org/xwiki/bin/view/Main/Tapestry5HowToAcegiCas&#034;&gt;InterLDAP -  Wiki - Main - Tapestry5HowToAcegiCas&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215917153&#034; add_date=&#034;1215917153&#034; tags=&#034;acegi,tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5AcegiNoAnnotations&#034;&gt;Tapestry5AcegiNoAnnotations - Tapestry Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215917149&#034; add_date=&#034;1215917149&#034; tags=&#034;acegi,tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5Acegi&#034;&gt;Tapestry5Acegi - Tapestry Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215917146&#034; add_date=&#034;1215917146&#034; tags=&#034;acegi,tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5LinkingToNonTapestryURIs&#034;&gt;Tapestry5LinkingToNonTapestryURIs - Tapestry Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215916210&#034; add_date=&#034;1215916210&#034; tags=&#034;tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5HowTos&#034;&gt;Tapestry5HowTos - Tapestry  Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215915539&#034; add_date=&#034;1215915539&#034; tags=&#034;tapestry&#034; href=&#034;http://chinajavawolf.javaeye.com/&#034;&gt;技术的本质是生活 - JavaEye技术网站&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215912654&#034; add_date=&#034;1215912654&#034; tags=&#034;tapestry&#034; href=&#034;http://wiki.apache.org/tapestry/Tapestry5Utf8Encoding&#034;&gt;Tapestry5Utf8Encoding - Tapestry Wiki&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;InjectService ，Tapestry5使用UTF-8 Encoding  &lt;/dd&gt;&lt;dt&gt;&lt;a last_visit=&#034;1215870422&#034; add_date=&#034;1215870422&#034; tags=&#034;tapestry&#034; href=&#034;http://buccoo.blogspot.com/&#034;&gt;RIA development using Tapestry 5 and Openlaszlo&lt;/a&gt; &lt;/dt&gt;&lt;/dl&gt;
        </description>
      
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/07/14/1216008211518.html">
    <title>在Tapestry5框架里实现下载文件功能</title>
    <link>http://www.searchfull.net:80/blog/2008/07/14/1216008211518.html</link>
    
      
      
        <description>
          &lt;p&gt;在Tapestry5框架里实现下载文件功能，输出非&amp;ldquo;&lt;font face=&#034;Arial&#034;&gt;text/xml&lt;/font&gt;&amp;rdquo;，&amp;ldquo;&lt;font face=&#034;Arial&#034;&gt;text/html&lt;/font&gt;&amp;rdquo;ContentType类型。&lt;/p&gt;
&lt;p&gt;注：（默认地，Tapestry5输出&lt;font face=&#034;Arial&#034;&gt;text/html，要输出&lt;font face=&#034;Arial&#034;&gt;text/xml，需要在Page 类声明前增加注释，&lt;font face=&#034;Arial&#034;&gt;@Meta(&amp;quot;tapestry.response-content-type=text/xml&amp;quot;)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;）&lt;/p&gt;
&lt;p&gt;下面是Tapestry 5文件流请求/响应的代码示例。&lt;/p&gt;
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/07/14/1216008211518.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/07/12/1215825054079.html">
    <title>我收藏的链接（23）</title>
    <link>http://www.searchfull.net:80/blog/2008/07/12/1215825054079.html</link>
    
      
      
        <description>
          &lt;dl&gt;&lt;dt&gt;&lt;a href=&#034;http://www.javayou.com/diary/7141&#034; tags=&#034;memcached&#034; add_date=&#034;1215822989&#034; last_visit=&#034;1215822989&#034;&gt;【原创】Hibernate&amp;nbsp;和&amp;nbsp;memcached&amp;nbsp;的集成问题 --  Java自由人&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a href=&#034;http://code.google.com/p/hibernate-memcached/&#034; tags=&#034;memcached,hibernate,cache&#034; add_date=&#034;1215822724&#034; last_visit=&#034;1215822724&#034;&gt;hibernate-memcached - Google Code&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a href=&#034;http://code.google.com/p/spymemcached/&#034; tags=&#034;memcached,cache&#034; add_date=&#034;1215822715&#034; last_visit=&#034;1215822715&#034;&gt;spymemcached - Google Code&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;memcached client客户端  &lt;/dd&gt;&lt;dt&gt;&lt;a href=&#034;http://struts.apache.org/2.x/index.html&#034; tags=&#034;struts2,framework&#034; add_date=&#034;1215697693&#034; last_visit=&#034;1215697693&#034;&gt;Struts 2 - Welcome&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a href=&#034;http://blog.dhananjaynene.com/2008/07/performance-comparison-c-java-python-ruby-jython-jruby-groovy/&#034; tags=&#034;java&#034; add_date=&#034;1215527517&#034; last_visit=&#034;1215527517&#034;&gt;/var/log/mind &amp;raquo;  Performance Comparison - C++ / Java / Python / Ruby/ Jython / JRuby / Groovy&lt;/a&gt;   &lt;/dt&gt;&lt;dd&gt;各种语言性能比较  &lt;/dd&gt;&lt;dt&gt;&lt;a href=&#034;http://www.theserverside.com/tt/articles/article.tss?l=ScalingYourJavaEEApplications&#034; tags=&#034;architecture&#034; add_date=&#034;1215494029&#034; last_visit=&#034;1215494029&#034;&gt;Enterprise  Java Community: Scaling Your Java EE Applications&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a href=&#034;http://solutoire.com/flotr/docs/&#034; tags=&#034;chart,graph,javascript&#034; add_date=&#034;1215484776&#034; last_visit=&#034;1215484776&#034;&gt;Solutoire.com &amp;rsaquo; Flotr  Documentation&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;javascript生成图表  &lt;/dd&gt;&lt;dt&gt;&lt;a href=&#034;http://code.google.com/p/extremetable/&#034; tags=&#034;displaytag,table&#034; add_date=&#034;1215479117&#034; last_visit=&#034;1215479117&#034;&gt;extremetable - Google Code&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a href=&#034;http://www.packtpub.com/article/tapestry-5-advanced-components&#034; tags=&#034;tapestry&#034; add_date=&#034;1215478876&#034; last_visit=&#034;1215478876&#034;&gt;Tapestry 5  Advanced Components&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a href=&#034;http://thread.gmane.org/gmane.comp.java.tapestry.user/39660/focus=39670&#034; tags=&#034;PermGen&#034; add_date=&#034;1215412699&#034; last_visit=&#034;1215412699&#034;&gt;PermGen space&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;使用cglib的框架，如hibernate，spring，tapestry，再多次redeploy后都会出现PermGen space问题  &lt;/dd&gt;&lt;dt&gt;&lt;a href=&#034;http://code.google.com/p/tapestry5-components/&#034; tags=&#034;tapestry&#034; add_date=&#034;1215402376&#034; last_visit=&#034;1215402376&#034;&gt;tapestry5-components - Google  Code&lt;/a&gt;  &lt;/dt&gt;&lt;dt&gt;&lt;a href=&#034;http://developer.yahoo.com/yslow/&#034; tags=&#034;performance,web&#034; add_date=&#034;1215400266&#034; last_visit=&#034;1215400266&#034;&gt;YSlow for Firebug&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Web 前端优化最佳实践  &lt;/dd&gt;&lt;dt&gt;&lt;a href=&#034;http://code.google.com/p/jiffy-web/&#034; tags=&#034;performance,web&#034; add_date=&#034;1215400098&#034; last_visit=&#034;1215400098&#034;&gt;jiffy-web - Google Code&lt;/a&gt;  &lt;/dt&gt;&lt;dd&gt;Web 前端优化最佳实践  &lt;/dd&gt;&lt;dt&gt;&lt;a href=&#034;http://87.193.218.134:8080/t5c-demo/&#034; tags=&#034;Tapestry&#034; add_date=&#034;1215251156&#034; last_visit=&#034;1215251156&#034;&gt;Tapestry 5 Components Test  Application&lt;/a&gt;  &lt;/dt&gt;&lt;/dl&gt;
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/07/12/1215825054079.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://www.searchfull.net:80/blog/2008/07/09/1215582119630.html">
    <title>Tapestry 5 自动重载page模板和page类问题</title>
    <link>http://www.searchfull.net:80/blog/2008/07/09/1215582119630.html</link>
    
      
      
        <description>
          &lt;p class=&#034;section&#034;&gt;&lt;a href=&#034;http://tapestry.apache.org/tapestry5/&#034;&gt;Tapestry5&lt;/a&gt;确实可以自动reload page tml模板和page classes，如果你的web.xml的定义是：&lt;/p&gt;
&lt;div&gt;
&lt;pre&gt;&amp;lt;!DOCTYPE web-app
      PUBLIC &amp;quot;-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN&amp;quot;
      &amp;quot;http://java.sun.com/dtd/web-app_2_3.dtd&amp;quot;&amp;gt;
&amp;lt;web-app&amp;gt;
    &amp;lt;display-name&amp;gt;My Tapestry Application&amp;lt;/display-name&amp;gt;
    &amp;lt;context-param&amp;gt;
        &amp;lt;param-name&amp;gt;tapestry.app-package&amp;lt;/param-name&amp;gt;
        &amp;lt;param-value&amp;gt;&lt;font color=&#034;#ff0000&#034;&gt;org.example.myapp&lt;/font&gt;&amp;lt;/param-value&amp;gt;
    &amp;lt;/context-param&amp;gt;
    &amp;lt;filter&amp;gt;
        &amp;lt;filter-name&amp;gt;app&amp;lt;/filter-name&amp;gt;
        &amp;lt;filter-class&amp;gt;org.apache.tapestry5.TapestryFilter&amp;lt;/filter-class&amp;gt;
    &amp;lt;/filter&amp;gt;
    &amp;lt;filter-mapping&amp;gt;
        &amp;lt;filter-name&amp;gt;app&amp;lt;/filter-name&amp;gt;
        &amp;lt;url-pattern&amp;gt;/*&amp;lt;/url-pattern&amp;gt;
    &amp;lt;/filter-mapping&amp;gt;
&amp;lt;/web-app&amp;gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;那么，包org.example.myapp以及子包下面的tml和page class可以自动reload，也就是说，只有在&lt;tt&gt;org.example.myapp.pages下面的page classes和在&lt;tt&gt;org.example.myapp.components下面的component classes才会自动reload&lt;/tt&gt;&lt;/tt&gt;。&lt;/p&gt;
          &lt;p&gt;&lt;a href="http://www.searchfull.net:80/blog/2008/07/09/1215582119630.html"&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  

</rdf:RDF>
