`
bayaci
  • 浏览: 283142 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

天乙论坛v8 web.xml 分析

 
阅读更多
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <!--
  3. http://www.ibm.com/developerworks/cn/java/j-tomcat/
  4. 应该指定它们为web.xml文件内<web-app>标记的子标记。
  5. -->
  6. <web-appversion="2.4"
  7. xmlns="http://java.sun.com/xml/ns/j2ee"
  8. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  9. xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  10. <display-name>bbscs8</display-name>
  11. <filter>
  12. <filter-name>UrlRewriteFilter</filter-name>
  13. <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
  14. </filter>
  15. <!--
  16. <filter-mapping>标记代表了一个过滤器的映射,
  17. 指定了过滤器会对其产生作用的URL的子集。
  18. 它必须有一个<filter-name>子元素与能找到
  19. 您希望映射的过滤器的过滤器定义相对应。
  20. -->
  21. <filter-mapping>
  22. <filter-name>UrlRewriteFilter</filter-name>
  23. <url-pattern>/*</url-pattern>
  24. </filter-mapping>
  25. <!--
  26. <filter>
  27. <filter-name>SidFilter</filter-name>
  28. <filter-class>com.laoer.bbscs.web.servlet.SidFilter</filter-class>
  29. </filter>
  30. <filter-mapping>
  31. <filter-name>SidFilter</filter-name>
  32. <url-pattern>/*</url-pattern>
  33. </filter-mapping>
  34. -->
  35. <filter>
  36. <filter-name>CharacterEncodingFilter</filter-name>
  37. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  38. <!--
  39. init-param>子元素为过滤器实例提供初始化参数
  40. -->
  41. <init-param>
  42. <param-name>encoding</param-name>
  43. <param-value>UTF-8</param-value>
  44. </init-param>
  45. <init-param>
  46. <param-name>forceEncoding</param-name>
  47. <param-value>true</param-value>
  48. </init-param>
  49. </filter>
  50. <filter-mapping>
  51. <filter-name>CharacterEncodingFilter</filter-name>
  52. <url-pattern>/*</url-pattern>
  53. </filter-mapping>
  54. <!--
  55. 如果应用中使用了OpenSessionInViewFilter或者OpenSessionInViewInterceptor,
  56. 所有打开的session会被保存在一个线程变量里。在线程退出前通过
  57. OpenSessionInViewFilter或者OpenSessionInViewInterceptor断开这些session。
  58. 为什么这么做?这主要是为了实现Hibernate的延迟加载功能。基于一个请求
  59. 一个hibernatesession的原则。
  60. -->
  61. <filter>
  62. <filter-name>OpenSessionInViewFilter</filter-name>
  63. <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  64. </filter>
  65. <filter-mapping>
  66. <filter-name>OpenSessionInViewFilter</filter-name>
  67. <url-pattern>/*</url-pattern>
  68. </filter-mapping>
  69. <!--
  70. 在做上传文件的时候,
  71. 要在web.xml中增加ActionContextCleanUp这个filter,
  72. 如果不增加,会发生第一次上传取不到文件的情况
  73. -->
  74. <filter>
  75. <filter-name>struts-cleanup</filter-name>
  76. <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
  77. </filter>
  78. <filter-mapping>
  79. <filter-name>struts-cleanup</filter-name>
  80. <url-pattern>/*</url-pattern>
  81. </filter-mapping>
  82. <!--
  83. 核心控制器:FilterDispatcher。
  84. FilterDispatcher类存在于org.apache.struts2.dispatcher包下,
  85. 它继承了javax.servlet.Filter接口。在应用的web.xml文件中需要配置该控制器,
  86. 用来接收用户所有请求,FilterDispatcher会判断请求是否为*.action模式,
  87. 如果匹配,则FilterDispatcher将请求转发给Struts2.0框架进行处理。
  88. 在web.xml文件中对FilterDispatcher的配置
  89. -->
  90. <filter>
  91. <filter-name>Struts2</filter-name>
  92. <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
  93. </filter>
  94. <filter-mapping>
  95. <filter-name>Struts2</filter-name>
  96. <url-pattern>/*</url-pattern>
  97. <dispatcher>REQUEST</dispatcher>
  98. <dispatcher>FORWARD</dispatcher>
  99. </filter-mapping>
  100. <context-param>
  101. <param-name>urlrewrite</param-name>
  102. <param-value>false</param-value>
  103. </context-param>
  104. <context-param>
  105. <param-name>cluster</param-name>
  106. <param-value>false</param-value>
  107. </context-param>
  108. <context-param>
  109. <param-name>servletmapping</param-name>
  110. <param-value>*.bbscs</param-value>
  111. </context-param>
  112. <context-param>
  113. <param-name>poststoragemode</param-name>
  114. <param-value>1</param-value>
  115. </context-param>
  116. <listener>
  117. <listener-class>com.laoer.bbscs.web.servlet.SysListener</listener-class>
  118. </listener>
  119. <context-param>
  120. <!--contextConfigLocation参数定义了要装入的Spring配置文件。-->
  121. <param-name>contextConfigLocation</param-name>
  122. <param-value>/WEB-INF/applicationContext.xml,/WEB-INF/action-servlet.xml</param-value>
  123. </context-param>
  124. <!--
  125. 有两种方法,一个是用ContextLoaderListener这个Listerner,
  126. 另一个是ContextLoaderServlet这个Servlet,
  127. 这两个方法都是在web应用启动的时候来初始化WebApplicationContext,
  128. 我个人认为Listerner要比Servlet更好一些,
  129. 因为Listerner监听应用的启动和结束,而Servlet得启动要稍微延迟一些,
  130. 如果在这时要做一些业务的操作,启动的前后顺序是有影响的。
  131. ContextLoader是一个工具类,用来初始化WebApplicationContext,
  132. 其主要方法就是initWebApplicationContext,
  133. 我们继续追踪initWebApplicationContext这个方法
  134. (具体代码我不贴出,大家可以看Spring中的源码),
  135. 我们发现,原来ContextLoader是把WebApplicationContext
  136. (XmlWebApplicationContext是默认实现类)放在了ServletContext中,
  137. ServletContext也是一个“容器”,
  138. 也是一个类似Map的结构,
  139. 而WebApplicationContext在ServletContext中的
  140. KEY就是WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE,
  141. 我们如果要使用WebApplicationContext则需要从ServletContext取出,
  142. Spring提供了一个WebApplicationContextUtils类,
  143. 可以方便的取出WebApplicationContext,只要把ServletContext传入就可以了。
  144. -->
  145. <listener>
  146. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  147. </listener>
  148. <servlet>
  149. <servlet-name>authimg</servlet-name>
  150. <servlet-class>com.laoer.bbscs.web.servlet.AuthImg</servlet-class>
  151. </servlet>
  152. <servlet-mapping>
  153. <servlet-name>authimg</servlet-name>
  154. <url-pattern>/authimg</url-pattern>
  155. </servlet-mapping>
  156. <servlet>
  157. <servlet-name>rss</servlet-name>
  158. <servlet-class>com.laoer.bbscs.web.servlet.Rss</servlet-class>
  159. </servlet>
  160. <servlet-mapping>
  161. <servlet-name>rss</servlet-name>
  162. <url-pattern>/rss</url-pattern>
  163. </servlet-mapping>
  164. <welcome-file-list>
  165. <welcome-file>index.jsp</welcome-file>
  166. </welcome-file-list>
  167. <!--
  168. 在Tomcat5.0.x中,Tomcat支持了JSP2.0的规格,
  169. 同时也支持了部分J2EE1.4的规格,
  170. 在J2EE1.4的规格中,
  171. 有关JSP的部份,有一个<jsp-config>的XMLTag,
  172. 这个XML区块用来定义与JSP相关的特殊属性,
  173. 包含采用的taglib与以下说明的<jsp-property-group>
  174. 而解决include档中文问题的方法就定义在<jsp-roperty-group>
  175. -->
  176. <jsp-config>
  177. <taglib>
  178. <taglib-uri>/WEB-INF/struts-tags.tld</taglib-uri>
  179. <taglib-location>/WEB-INF/struts-tags.tld</taglib-location>
  180. </taglib>
  181. </jsp-config>
  182. <error-page>
  183. <error-code>401</error-code>
  184. <location>/401.htm</location>
  185. </error-page>
  186. <error-page>
  187. <error-code>403</error-code>
  188. <location>/403.htm</location>
  189. </error-page>
  190. <error-page>
  191. <error-code>404</error-code>
  192. <location>/404.htm</location>
  193. </error-page>
  194. <error-page>
  195. <error-code>500</error-code>
  196. <location>/500.htm</location>
  197. </error-page>
  198. <error-page>
  199. <exception-type>java.lang.NullPointerException</exception-type>
  200. <location>/npe.htm</location>
  201. </error-page>
  202. </web-app>
分享到:
评论

相关推荐

    [论坛社区]天乙社区修改版_bbscs7.zip

    通过学习和分析这个项目,可以理解如何使用JSP构建动态网站,如何处理用户交互,以及如何组织一个完整的Web应用项目。同时,它也可以作为一个基础,帮助开发者扩展功能,例如添加用户认证、权限管理、搜索引擎优化等...

    天乙社区开源代码(strut+strping+hibernate)

    天乙社区是一个基于开源技术构建的论坛系统,开发者通过分享其源代码,促进了社区间的交流与学习。该系统的核心框架采用了经典的Java Web开发技术栈,包括Struts、Spring和Hibernate,这三者共同构建了一个功能完备...

    天乙代码src_531.rar_tian

    通过对它的分析和应用,我们不仅能够增进对“天乙”系统的理解,还能拓展我们的技术视野,提高我们的软件开发能力。在这个充满挑战和机遇的数字时代,掌握这样的资源,将有助于我们在激烈的竞争中脱颖而出。

    天乙6.0论坛源码,采用s1sh框架

    总的来说,天乙6.0论坛源码的使用和研究对于学习Java Web开发,尤其是SSH框架的实践应用具有很高的价值。它展示了如何通过这三个强大的框架来构建一个功能完备、稳定可靠的在线社区,为开发者提供了宝贵的实战经验。

    天乙社区系统(Struts+Spring+Hibernate)源代码

    "天乙社区系统"的源代码,采用的是经典的"Struts+Spring+Hibernate"(SSH)架构,这是一套广泛应用于企业级Web应用开发的技术栈,其核心组件包括Struts作为表现层框架,Spring作为业务层管理和依赖注入容器,以及...

    [论坛社区]天乙社区修改版_bbscs7.rar

    【标题】:“[论坛社区]天乙社区修改版_bbscs7.rar”指的是一个针对名为“天乙社区”的在线论坛平台进行定制或优化后的版本,该版本被存档为RAR格式的压缩文件,名为“bbscs7”。 【描述】:“[论坛社区]天乙社区...

    ssh天乙论坛6.0源码

    通过研究天乙论坛6.0的源码,开发者不仅可以学习SSH框架的实际应用,还能了解到如何设计和实现一个完整的社区系统,包括用户管理、内容发布、权限控制等多个方面,对于提升Java Web开发能力大有裨益。

    对天乙社区bbscs8实现的详细分析一(附文档下载)

    【标题】"对天乙社区bbscs8实现的详细分析一(附文档下载)" 提供的是关于一个名为“天乙社区”的BBS系统——BBScs8的深入解析。这个系列的分析文档可能涵盖了该社区平台的架构设计、功能模块、代码结构以及可能涉及到...

    天乙社区6.0(含源码)

    源码分析可以帮助学习者掌握Web开发的最佳实践,理解大型项目中的模块化设计,以及如何处理社区系统的复杂交互。同时,对于希望打造个性化社区平台的人来说,源码是实现这一目标的关键。通过修改和扩展源码,可以...

    移动开发期末考核相关文件吴天乙.zip

    本篇将深入探讨移动开发的相关知识点,以帮助理解“移动开发期末考核相关文件吴天乙.zip”可能涵盖的内容。 1. **移动操作系统**:移动开发的基础是移动操作系统,主要分为Android和iOS两大阵营。Android由Google...

    bbs-天乙社区模板录像

    【标题】"bbs-天乙社区模板录像"所涉及的知识点主要集中在开源论坛系统以及社区模板设计上。开源论坛,通常是指那些采用开放源代码的软件,允许用户自由使用、修改和分发的在线讨论平台。这类系统为开发者和用户提供...

    Spring+Struts+Hibernate框架BBS源码

    Spring+Struts+Hibernate框架BBS源码是一个典型的Java Web应用程序开发示例,它整合了三个主流的开源框架,用于构建高效、可扩展且易于维护的论坛系统。在这个项目中,Spring作为整体应用的管理容器,负责依赖注入...

    [论坛社区]BBS-CS 天乙社区 v6.0.1(含源码)_bbs-cs601(毕设 + 课设).zip

    综合以上分析,我们可以得出,"BBS-CS 天乙社区 v6.0.1"是一个包含源代码的论坛平台,它使用了CSS来控制界面样式,具有图片资源和国际化支持,并且可能使用了某种服务器端语言(如PHP)和数据库(如MySQL)进行数据...

    天乙社区论坛源码,适合初级SSH向中等水平的进阶学习资料--源代码

    本源码是在天乙社区论坛基础上的二次开发,实战型项目的源码,适合初级SSH开发的进阶学习。由于源码比较大且一次上传大小有限制,所以分作三个压缩文件。 bbscs7.rar源代码包 lib1.rar(天乙社区论坛源码,适合初级...

    BBS.rar_天乙社区_社区源码

    天乙社区可能是一个基于互联网的论坛系统,允许用户进行互动、讨论和分享信息。 【描述】:“BBS-CS 天乙社区 v6.0.4(含源码)BBS-CS 天乙社区 v6.0.4(含源码)” 描述了这个软件的版本是v6.0.4,强调了它带有“CS”...

    天乙社区 v6.0(含源码)

    对于学习者而言,通过分析"天乙社区 v6.0"的源码,可以了解社区软件的设计模式、数据库设计原则、权限控制机制、缓存策略等关键知识点,同时也能掌握如何处理大量用户并发请求和构建可扩展的网络服务。此外,对于想...

    BBS-CS(天乙社区)v5.2.2源码版

    【BBS-CS(天乙社区)v5.2.2源码版】是一个基于互联网的社区论坛软件,旨在为用户提供一个互动交流的平台。这个版本的天乙社区源码提供了丰富的功能,让管理员和用户能够轻松地创建、管理并参与讨论。下面我们将详细...

    [论坛社区]BBS-CS 天乙社区 v6.0.1(含源码)_bbs-cs601.zip

    通过学习和分析这个源码,学生可以深入理解Java Web开发的核心概念,包括服务器端编程、动态网页生成以及数据库交互等关键技能。 【标签】: 1. **Java**:这是一个使用Java语言编写的程序。Java是一种广泛使用的...

    [论坛社区]BBS-CS 天乙社区 v6.0.1(含源码)_bbs-cs601.rar

    【BBS-CS 天乙社区 v6.0.1】是一款基于互联网的社区论坛系统,专为用户提供在线交流、信息分享、互动娱乐等多功能服务。该版本包含了完整的源代码,对于开发者来说,这是一个宝贵的资源,可以深入理解社区论坛系统的...

Global site tag (gtag.js) - Google Analytics