netgame 2015-05-20
在基于osgi的web开发中,会遇到很多与常规化思路不一样的挑战。osgi作为统一管理容器,对有“容器”特性的开源框架都需要考虑“整合”问题,主要的问题点突出在以下几点:
1、由于osgi容器中的每个bundle由独立的classload加载,因此内存共享成为最突出的问题;
2、在web开发中,解决与web容器的集成也是突出问题之一,最优的方式当然是web容器bundle交由osgi容器托管。但市面上大部分的web容器都不会考虑到这点。因此,需要我们做很多集成工作。
3、osgi本身对Http服务接收和处理的接口还很单一,也需要我们变相处理。例如:对Servlet Filter的应用。
本文以Spring Security与osgi的整合作为例子,提供了一套关于servlet filter在osgi中的应用方案,网上好像一直没看到相关的例子,供大家参考下。