发明名称 一种应用服务器平台的实现方法
摘要 一种应用服务器平台的实现方法,采用调用,预编译方式不需要使用反射机制,使运行速度大大提高;且具有一个预先编译生成代码的过程,因此可以把一些控制逻辑放到编译的代码中,使得容器的结构尽可能的简单;对于每一个ejb实例都有相应的接收请求的对象,不会造成像动态代理方式那样的瓶颈;可以在客户调用达到之前就生成好EJBHome和EJBObject对象,这样会减少客户的访问时间;在长时间不使用ejb实例时,可以将实例进行钝化,从而节省系统资源。
申请公布号 CN100349115C 申请公布日期 2007.11.14
申请号 CN200510042874.4 申请日期 2005.06.30
申请人 西安交通大学 发明人 郗旻;齐勇;赵季中;候迪;赵天海
分类号 G06F9/44(2006.01) 主分类号 G06F9/44(2006.01)
代理机构 西安通大专利代理有限责任公司 代理人 徐文权
主权项 1、一种应用服务器平台的实现方法,其特征在于:1)服务器对请求的处理:a、首先当一个应用即一个jar文件部署到服务器上之后,服务器通过应用的部署描述信息确定应用的种类为实体、会话或消息驱动bean;b、服务器通过部署描述符和反射机制获取输入的jar文件的元信息;c、服务器通过xml解析器分析元信息,将元信息添加到服务器已经定义的不会随应用类型变化而改变处理过程的模版文件中生成EJB实现类;d、服务器通过操作系统调用java开发工具中的javac过程编译生成的EJB实现类得到类文件;e、服务器通过操作系统调用java开发工具中的rmic对得到的类文件生成相应的stub和skeleton文件,并保留生成的stub和skeleton的源文件,将这些文件保存在一个临时文件夹中;f、服务器在stub和skeleton源文件中每个方法调用的前、后根据元信息当中描述的事务类型加入相应的事务代码,并根据元信息当中描述的安全信息加入安全处理代码;g、服务器通过操作系统调用java开发工具中的javac过程编译事务代码及安全处理代码,得到新的类文件;h、将生成的新的类文件加入到应用的jar文件当中;i、服务器根据应用的元信息中描述的类型用工厂方法建立容器;j、使用工厂方法为新建立的容器生成一个实例池,同时根据jar文件中的EJBObject类生成应用的实例EJBObject对象,将这些实例存放在实例池当中;k、服务器根据jar文件中的EJBHome代码生成EJBHome对象,等待客户调用;2)当网络客户访问服务器的时候,经过以下步骤实现请求a、客户从互联网上通过网页提交请求;b、在web容器接收到请求之后,提取需要处理的信息,将这些信息交给应用服务器;c、应用服务器在收到请求调用之后,将请求通过容器交给EJBHome对象;d、容器从实例池中取出EJBObject对象,并将控制权交给EJBObject;e、EJBObject对象执行安全和事务的处理代码,处理过程结束之后,由容器将控制权交给ejb实例,由ejb实例进行实际的运算过程,并得到最终的结果;f、将EIBObject放回实例池;g、通过EJBObject将结果发送给客户。
地址 710049陕西省西安市咸宁路28号