webservices的概要

webservices的概要
1.SOAP(简单对象访问协议的简称)定义了一个标准,该标准为通过网络在应用程序间传输XML数据封装格式.(1.1)
2.WSDL(Web Services Description Language, Web服务描述语言)是一个标准,用于描述使用SOAP在两个系统间交换的XML数据的结构.(1.1)
3.UDDI 虽然WSDL对描述由Web服务使用的SOAP消息的类型提供了很好的格式,但它没有提供如何存储WSDL文档以及如何查找WSDL文档方面的信息.UDDI(Universal Description,Discovery,and Integeration,通用描述,发现和集成)定义了一套标准的Web服务操作(方法),用于存储,查找有关其他Web服务应用程序方面的信息.(2.0)

Web Services API
1.JAX-RPC 可以将JAX-RPC看成是位于SOAP之上的Java RMI(Java远程方法调用).JAX-RPC分两个部分,即一套客户端API和一套服务器端API,它们均称为端点.(1.1)
2.SAAJ(SOAP with Attachments API for Java, 由于Java的带附件API的SOAP)是一个低级SOAP API,它要于SOAP1.1和带附件规范的SOAP消息一起编译.
3.JAXR(Java API for XML Registries,用于XML注册的Java API)提供了用于访问UDDI注册表的API.
3.JAXP(Java API for XML Processing,用于XML处理的Java API)为使用DOM2和SAX2以及为用于读,写和修改XML文档的标准Java API提供了架构.(1.2)

SOAP的主要应用是应用程序与应用程序之间的通信(即A2A),且主要应用于商务对商务(即B2B)的通信以及企业应用集成(EAI).

SOAP消息传递模式:
1.Document/Literal消息传递模式:
<?xml version="1.0" encoding="UTF-8"?>
<soap-Envelope
xmlns:soap="  http://schemas.xmlsoap.org/soap/envelop/" ;
  xmlns:mi="  http://www.Monson-Haefel.com/jwsbook/message-id" ;
  xmlns:proc="  http://http://www.Monson-Haefel.com/jwsbook/processed-  ;   by">
  <soap:Header>
    <!--Header blocks go here-->
  </soap:Header>
  <soap:Body>
    <po:purchaseOrder orderDate="2003-09-22"
      xmlns:po="  http://www.Monson-Haefel.com/jwsbook/PO" ;>
        <po:accountName>Amazon.com</po:accountName>
        <po:accountNumber>923</po:accountNumber>
        <po:book>
          <po:title>J2EE Web Services</po:title>
          <po:quantity>300</po:quantity>
          <po:wholesale-price>24.99</po:wholesale-price>
        </po:book>
    </po:purchaseOrder>
  </soap:Body>
</soap-Envelope>
2.RPC/Literal消息传递模式
用一个这样的方法调用:
package com.jwsbook.soap;
import java.rmi.RemoteException;

public interface BookQuote extends java.rmi.Remote {
  public float getBookPrice(String ISBN) throws RemoteException,
    InvalidISBNException;
}

RPC/LiteralSOAP请求消息:
<?xml version="1.0" encoding="UTF-8"?>
<soap-Envelope
xmlns:soap="  http://schemas.xmlsoap.org/soap/envelop/" ;
  xmlns:mh="  http://www.Monson-Haefel.com/jwsbook/BookQuote" ;>
    <soap:Body>
     <mh:getBookPrice>
       <isbn>0321146182</isbn>
     </mh:getBookPrice>
    </soap:Body>
</soap-Envelope>
RPC/Literal SOAP响应消息:
<?xml version="1.0" encoding="UTF-8"?>
<soap-Envelope
xmlns:soap=" http://schemas.xmlsoap.org/soap/envelop/" ;
  xmlns:mh="  http://www.Monson-Haefel.com/jwsbook/BookQuote" ;>
    <soap:Body>
      <mh:getBookPriceResponse>
        <result>24.99</result>
      </mh:getBookPriceResponse>
    </soap:Body>
</soap-Envelope>

你可能感兴趣的:(webservices的概要)