WEBService-SOAP协议

SOAP协议

0:开始:
最近需要处理老项目重构。
旧的webservice使用axis2 +springframework框架.现在需更新为 CXF+springBoot 框架。
在操作之前需要对soap协议进行简单了解

1.概念:

官方 : 简单对象访问协议是交换数据的一种协议规范,是一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议,它被设计成在WEB上交换结构化的和固化的信息。
理解: 用xml的形式(io/String)传输数据的一种协议。一个soap协议本身是一个xml文档,以流的方式在客户端和服务段间传输。

2.结构

webservice三要素
SOAP、
WSDL(WebServicesDescriptionLanguage)、 UDDI(UniversalDescriptionDiscovery andIntegration)
soap:用来描述信息的格式:xml的格式
wsdl:用来描述如何访问接口。
uddi:用来管理,分发,查询webService
soap四个部分
封装:
  它定义了一个框架 , 该框架描述了消息中的内容是什么,谁应当处理它以及它是可选的还是必须的。
编码规则:
  它定义了一种序列化的机制,用于交换应用程序所定义的数据类型的实例。
RPC表示
  它定义了用于表示远程过程调用和应答的协定。
绑定
  定义了一种使用底层传输协议来完成在节点间交换SOAP封装的约定。

3.样例

协议基础样例

  SOAP:HEADER
 
  SOAP:Body
 

构建模块

  • 必需的 Envelope 元素,可把此 XML 文档标识为一条 SOAP 消息
  • 可选的 Header 元素,包含头部信息
  • 必需的 Body 元素,包含所有的调用和响应信息
  • 可选的 Fault 元素,提供有关在处理此消息所发生错误的信息
    语法规则
  • SOAP 消息***必须***用 XML 来编码
  • SOAP 消息***必须***使用 SOAP Envelope 命名空间
  • SOAP 消息***必须***使用 SOAP Encoding 命名空间
  • SOAP 消息不能包含 DTD 引用
  • SOAP 消息不能包含 XML 处理指令
    完整soap基础结构


soap:Header

soap:Body
soap:Fault


你可能感兴趣的:(webService,java)