webx下的AnalyzeURLValve分析URL过程详细解析
2014-08-03 11:14
232 查看
AnalyzeURLValve用来分析URL的成分。
<valve class="com.alibaba.turbine.pipeline.AnalyzeURLValve"/>
有不少初学者误以为URL和物理文件之间是一一对应的。例如:http://localhost:8080/workshop/hello.htm代表workshop目录下有一个hello.htm文件。这是不一定的。事实上,你应该把URL看作一个参数。一个URL实际对应的操作是什么,可以由应用程序自己来决定。
以http://localhost:8080/workshop/hello.htm为例,URL的分析分为下面几步:
1. /workshop被称为Context Path。应用服务器看到/workshop,就把这个请求交给workshop应用来接管。
2. /hello.htm被称为Servlet Path。因为我们在web.xml中把*.htm映射到Webx Controller Servlet,所以Webx Controller Servlet就接管了这个请求。
3. Webx Controller Servlet激活pipeline,继而调用AnalyzeURLValve来分析/hello.htm是什么意思。根据webx默认的映射规则,/hello.htm被转换成/hello.vm。
经过上述转换,最后得到的结果被称为target。在这个例子中,target的值为/hello.vm。
有人想当然认为/hello.vm是代表Velocity模板,事实上,这也是不一定的。到目前为止,只能称它为“target”。在后续的valve中,我们会将/hello.vm解释为Velocity模板。
转载:iteye
<valve class="com.alibaba.turbine.pipeline.AnalyzeURLValve"/>
有不少初学者误以为URL和物理文件之间是一一对应的。例如:http://localhost:8080/workshop/hello.htm代表workshop目录下有一个hello.htm文件。这是不一定的。事实上,你应该把URL看作一个参数。一个URL实际对应的操作是什么,可以由应用程序自己来决定。
以http://localhost:8080/workshop/hello.htm为例,URL的分析分为下面几步:
1. /workshop被称为Context Path。应用服务器看到/workshop,就把这个请求交给workshop应用来接管。
2. /hello.htm被称为Servlet Path。因为我们在web.xml中把*.htm映射到Webx Controller Servlet,所以Webx Controller Servlet就接管了这个请求。
3. Webx Controller Servlet激活pipeline,继而调用AnalyzeURLValve来分析/hello.htm是什么意思。根据webx默认的映射规则,/hello.htm被转换成/hello.vm。
经过上述转换,最后得到的结果被称为target。在这个例子中,target的值为/hello.vm。
有人想当然认为/hello.vm是代表Velocity模板,事实上,这也是不一定的。到目前为止,只能称它为“target”。在后续的valve中,我们会将/hello.vm解释为Velocity模板。
转载:iteye
相关文章推荐
- Servlet url-pattern /与/*区别,*.action以及SpringMVC中/*解析出错过程分析
- OpenStack建立实例完整过程源码详细分析(15)----依据AMQP通信架构实现消息接收机制解析之二
- OpenStack建立实例完整过程源码详细分析(12)----依据AMQP通信架构实现消息发送机制解析之一
- OpenStack建立实例完整过程源码详细分析(14)----依据AMQP通信架构实现消息接收机制解析之一
- webx学习总结之页面流程执行过程详细分析
- webx学习总结之页面流程执行过程详细分析(转载)
- OpenStack建立实例完整过程源码详细分析(13)----依据AMQP通信架构实现消息发送机制解析之二
- MFC窗口的创建过程详细解析
- uClinux 启动过程详细分析
- 分析 Struts中的struts-config.xml解析过程
- 详细解析:在CentOS下安装配置VNC的过程
- uClinux 启动过程详细分析
- 递归调用详解,分析递归调用的详细过程
- uClinux 启动过程详细分析(一)
- uClinux 启动过程详细分析
- linux2.6.29 启动过程详细分析
- linux2.4启动分析(2)---内核解压缩过程(续,更详细) compress booting kernel
- Linux系统开机过程详细分析
- 对于C语言MFC的详细的解析(4)--MFC程序结构分析
- uClinux 启动过程详细分析