Web服务在EJB 2.1到EJB 3.0中的改变

http://tech.ddvip.com   2007年09月02日    社区交流

内容摘要:本文将会介绍在EJB3.0里面Web service的创建和之前相比较是如何改变的……

  简短的来说,我们只是列举在一些特别的过程中的缺点,后面我们会转移到一段实际的EJB3.0代码来看看是如何改变的。在EJB2.1中部署一个Web service最为显著的问题如下:

  Web service需要从一个会话EJB采用它的行为,而这个会话EJB本身是和一个遗产层次——例如在EJB3.0之前的版本——是紧密联系在一起的,同时也具有一系列的为EJB环境所需要的伴随接口。

  你需要定义一个传统的Java接口,这个传统接口将会用于提供服务端点,服务端点就是类似于在一个会话EJB中已经包含的远程接口。

  还需要另外一个配置文件——部署描述符——进一步的来指明EJB的服务行为。

  对这些Web services EJB的问题的减轻分为两种主要的形式:注释和简单的旧Java对象(POJO's)。注释是可以被放置在Java源代码文件中的元数据,为的是能够提供进一步的配置属性或者处理指令来执行Java环境。在另外一个方面,POJO's被拆分成java类,这些java类没有遗传依赖关系。

  通过注释,所有在部署描述符中已经定义了的数据可以被替代的放置在一个当读的文件当中,也就是那个包含了商务逻辑的源文件。这不是说外在的部署描述符在Web services EJB 3.0中废除了。相反的,他们仍然是非常有效的,尽管他们现在将会提供一种后退机制,来形成一种更加自然并且简单的过程,以配置商务逻辑的内嵌信息。

  另一方面,商务逻辑的设计和编码阶段是可以达到的,正如Web services可以通过使用POJO's来获得极大的简化。在EJB2.1种,创建一个能提供Web services的EJB的过程强迫你去处理会话EJB强加的遗传条件。因此对于这些情况,如果你以一个简单和容易理解的Web service操作集合开始,创建一个简单的Java对象只是EJB的过程中的开始,因为你需要作许多其他的工作来达到Web services设计的EJB的最后。

来源:TechTarget    作者:Daniel Rubio    责编:豆豆技术应用

正在加载评论...