论文部分内容阅读
自1999年J2EE的第一个版本推出以来,J2EE应用服务器一直是企业级计算的首选平台之一,而EJB则是J2EE的一个核心部分。J2EE/EJB的关注点一直是创建专注业务逻辑的可复用的分布式构件。但是,J2EE/EJB 在不断扩展其企业级应用功能的同时,强加给了开发人员巨大的编程/配置负担,由此诟病不断。这一状况,直到JEE5/EJB3.0的推出才得以缓解。
EJB3.0关注简化EJB的开发过程,同时给 EJB 的开发领域引入了若干新的开发理念。相应地,它对应用服务器的EJB容器也就提出了更高的要求。这个要求主要有两点:一是要向上兼容EJB2.x的部署和运行,二是要支持新的EJB3.0的开发范型。这是所有要开发EJB3.0兼容的应用服务器的团队都要认真考虑的问题。由于EJB3.0的提出时间还很短,因此这方面的研究不多,有的也是更多处于实验性质。一些开源的应用服务器,例如JOnAS和JBOSS,虽然也都推出了自己的兼容EJB3.0的应用服务器,但是它们也都存在浓厚的实验性质,尤其是在融合EJB2.x和EJB3.0的支持上还做的很不够。
本文着力于在遵循EJB2.x的应用服务器PKUAs上设计与实现EJB3.0容器,主要工作内容包括:详细分析了EJB3.0和EJB2.x的规范,比较它们的编程模型,发现关键问题,提出了一个EJB容器的体系结构,在EJB2.x的容器的基础上统一支持EJB2.x和EJB3.0。随后就这个统一的EJB容器实现的若干关键技术问题提出了相应的解决方案,并在PKuAS上予以实现。