经过最近一段对Portal 的熟悉与了解,结合最近对Spring的研究,以及在工作中构建类似于Portal的框架,对Portal这种框架有了明确的认识,在这里适当的总结一下,希望对大家能有所帮助!
1。什么是Portal?
Portal其实是基于Web应用的一种表现层框架(Web Framework),和Spring等框架的实现原理非常类似,不同的区别是Portal Container和Spring Container的运行机制的差别,同时PortalServer并不对外提供MVC中Controller这一层结构。
Portal Server是一种轻量级构建,构架在Web应用上面,通过封装独立的Portal容器,并结合Portlet来完成Portal所宣传的几个特点:个性化(Persionalization),单点登陆(Single Sign On)以及资源整合。
2。Portal是如何将请求转发到jsp页面中的?
和Spring非常的类似,都是使用RequestDispatcher进行的跳转,都是使用RequestDispatcher.getDispatch(JSPPageName)来获取一个RequestDispatcher,然后执行RequestDispatcher的forward和include方法。
在Spring中,使用的是forward(request,response)方法完成的跳转,这种跳转只能跳转到一个页面;而Portlet规范中定义的是使用inlcude(request,response)方法来完成的跳转,这样可以包含多个JSP页面。
3。Portal的资源整合是如何实现的