Servlet-模块化开发web fragment
2015年9月17日
1 目标:在不影响web.xml整体结构的情况下,独立开发web模块,提高复用性、降低耦合。
2 原理:容器识别web-fragment.xml配置文件,将其与整体应用合并。
3 流程:在web.xml中启用模块化(与注记相同)。开发web fragment project。打包。应用到目webapp。
注意:web-fragment.xml会自动生成display-name标签,则标签要删除,否则无法使用多个模块。
catalina.log中的错误提示:Thedisplay name was defined in multiple fragments with different values
参考:http://chainhou.iteye.com/blog/1986090
4 方法:
5 开发web fragment project:
5.1 新建webfragment project应用。
注意:如果指定了目标应用程序,则Eclipse会自动打包、应用。
5.2 配置web-fragment.xml。
删除display-name标签。
增加相关的标签。(也可以使用注记)。
模块名称:<name>
模块加载顺序:<ordering><before><after>
5.3 开发相应的servlet。
开发模块化的功能类。
6 打包:export 为jar。
7 应用:将jar复制到web-inf的lib目录。
8 示例:创建两个独立的监听器和一个过滤器
//第一个监听模块:TF1的web-fragment.xml
<?xmlversion="1.0" encoding="UTF-8"?>
<web-fragmentxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:webfragment=&