Portal 学习- 分析Jetspeed2 (2)

接下来就是一边想,一边看源码了。我看的代码是Jetspeed2.1.3。

直接看web.xml
<servlet>
<servlet-name>jetspeed</servlet-name>
<servlet-class>org.apache.jetspeed.engine.JetspeedServlet</servlet-class>
<init-param>
<param-name>properties</param-name>
<param-value>/WEB-INF/conf/jetspeed.properties</param-value>
</init-param>
<init-param>
<param-name>applicationRoot</param-name>
<param-value>webContext</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
还有其他的几个Servlet,暂时先不看了,这个Servlet应该就是最主要的Servlet了,看代码吧。JetspeedServelt.java标准Servlet对象,
而且这个Servlet对象实现了HttpSessionListener接口。
所以就是init,doGet,doPost,destroy,sessionCreated,sessionDestroyed函数了。

init函数:
创建了JetspeedEngie对象,同时engine.start()启动这个Engine对象。
通过这个对象把Servlet对于Porlet的处理功能进行了 委托。符合OO的概念:)
这里有个要强调的JetSpeed2使用Spring作为IoC,AoP的框架,所以在Init函数中初始化了SpringComponentManager对象,Jetspeed2中的关键对象都是通过IoC的方式进行创建的。这个我们在看代码的时候要注意。

初始化时的流程图

[img]http://zhaocx.iteye.com/upload/picture/pic/7912/0b4d1ad9-a087-32fe-ac50-695d7ddc69aa.jpg[/img]

doGet/doPost函数:
没有什么特别的,把Servlet的Request,Response和ServletConfig对象封装成ReqeustContext对象,然后交给engine对象处理。
engine.service(context).
处理完后清除相应的资源。Servlet处理完成。

destory函数:

engine.shutdown() 停止服务

sessionCreated/sessionDestroyed函数:
在HttpSession的基础上对Portal的Session进行管理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值