Webx Framework负责完成一系列基础性的任务
Webx Framework的任务
初始化Spring容器
初始化日志系统
增强request/response/session的功能
提供pipeline流程处理机制
异常处理
开发模式
一、初始化spring容器,在web.xml中添加监听器:
<listener> <listener- class >com.alibaba.citrus.webx.context.WebxContextLoaderListener</listener- class > </listener> |
WebxContextLoaderListener用于初始化Spring,搜索WEB-INF目录下的子应用配置文件,为每个子应用创建Spring容器
WebxContextLoaderListener是从spring的ContextLoaderListener派生出来的。ContextLoaderListener我们还是比较熟悉的,在使用spring的时候会在web.xml中配置。 |
二、初始化日志系统
<listener> <listener- class >com.alibaba.citrus.logconfig.LogConfiguratorListener</listener- class > </listener> |
LogConfigurationListener用于初始化日志系统(使用配置文件log4j.xml或logback.xml)
三、webx响应请求
当Webx Framework接收到一个来自WEB的请求以后,实际上它主要做了两件事:
首先,它会增强request、response、session的功能,并把它们打包成更易使用的RequestContext对象。
其次,它会调用相应子应用的pipeline,用它来做进一步的处理。
假如在上面的过程中出现异常,则会触发Webx Framework处理异常的过程。
四、pipeline流程控制
Pipeline的意思是管道,管道中有许多阀门(Valve),阀门可以控制水流的走向。Webx Framework中的pipeline可以控制处理请求的流程的走向
五、异常处理机制
当应用发生异常时,Webx Framework可以处理这些异常。
六、开发模式工具
Webx Framework提供了一个开关,可以让应用运行于“生产模式(Production Mode)”或是“开发模式(Development Mode)” 。
<services:webx-configuration> <services:productionMode>${productionMode: true }</services:productionMode> </services:webx-configuration> |
productionMode:true表示开发模式启动 在生产模式和开发模式下有一些不同的地方,具体的内容见官方文档。 |