本文参考官方文档

简介

     WebLogic Web Service是根据JSR 109: Implementing Enterprise Web Services规范来实现的企业级Web服务。JSR109定义了使用JAVA实现Web Service所需的标准JAVA EE运行架构。该规范还定义了一个标准的JAVA EE Web Service打包格式,部署模式,以及运行时服务。这些WebLogic Web Service都有实现。根据该规范定义,一个JAVA EE Web Service可以由以下两种组件实现:

  1. 一个JAVA类,运行在WEB容器中
  2. 一个无状态的EJB,运行在EJB容器中

     Web Service的业务逻辑由JAVA类或EJB中的代码实现。我们可以直接写这些原始的JAVA类或EJB,但是这比较费时。ORACLE推荐使用JWS annotation编程模式;这可以使编写一个WebLogic Web Service非常容易。这种编程模式利用了metadata annotations特性,然后使用ant tasks来编译文件生成java类和相关的artifacts。JWS annotated文件就是Web Service的核心文件, 它包含了定义Web Service如何工作的java代码。一个JWS文件就是一个普通的JAVA class文件,它使用annotations来描述Web Service的特征。而这些annotations既可以是Web Services Metadata for the Java Platform规范中定义的annotations,也可以是一些其他标准定义的annotations,或者WebLogic特有的annotations。这取决于你打算创建的Web service。

本文所及的WebLogic service版本支持两种类型的Web Service.

  1. JAX-WS Web services (Java API for XML-Based Web services 2.1 Web service) 
  2. JAX-RPC Web services(Java API for XML-Based RPC 1.1 (JAX-RPC) Web service) 

JAX-WS Web servicesJAX-RPC Web services的后续,提供了更多特性。参考下表来权衡哪种更适合使用。

一旦编写好一个简单的Weblogic web service,就可以通过编程或配置来增加高级特性;比如对SOAP消息进行数字签名或加密。可以使用WS-Policy文件来配置Weblogic web service的更多高级特性。 


Web Service的两种开发模式

  1. 自上而下: 先开发WSDL
  2. 自下而上: 先开发java类

参考文档:

  1. JSR 109: Implementing Enterprise Web Services specification  
  2. Web Services Metadata for the Java Platform

发表评论