Web Service简介

 

1Web Service

Web Service:是一个较新得分布式服务组件。本质是以标准化得方式实现企业内外各个不同服务系统之间得互调或者集成。

Web Service:通过SOAPWeb上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。



2WSDLWeb Service Description Lanaguage

基于Xml格式得关于Web服务得描述语言。

如一段代码:

package  com.sample.ejb.sessionbean;

public   interface  UserAccountMgr  extends  javax.ejb.EJBObject  {

   
public boolean checkUserLogin( java.lang.String loginName,java.lang.String password );

}


WSDL
得三部分得描述:


1) Type代码:

  < wsdl:types >
     
<!-- 服务接口方法 -->   
     
< element  name ="checkUserLogin" >
      
< complexType >
       
< sequence >
        
<!-- 输入参数及其类型 -->
        
< element  name ="loginName"  nillable ="true"  type ="xsd:string" />
        
< element  name ="password"  nillable ="true"  type ="xsd:string" />
       
</ sequence >
      
</ complexType >
   
<!-- 返回结果的类型 -->
      
< element  name ="checkUserLoginResponse" >
       
< complexType >
        
< sequence >
         
< element  name ="checkUserLoginReturn"   type ="xsd:boolean" />
        
</ sequence >
       
</ complexType >
     
</ element >
</ wsdl:types >

 

2) Message代码

<!-- 请求消息 -->  
  
< wsdl:message  name ="checkUserLoginRequest" >

      
< wsdl:part  name ="in0"  type ="xsd:string" />

      
< wsdl:part  name ="in1"  type ="xsd:string" />

   
</ wsdl:message >
<!-- 返回消息 -->
   
< wsdl:message  name ="checkUserLoginResponse" >

      
< wsdl:part  name ="checkUserLoginReturn"  type ="xsd:boolean" />

   
</ wsdl:message >


3) PortType代码

<!-- 服务接口 -->
   
< wsdl:portType  name ="CheckUserLoginMgr" >
<!-- 所包含得服务接口方法 -->
      
< wsdl:operation  name ="checkUserLogin"  parameterOrder ="in0 in1" >
<!-- 服务接口方法所对应得请求消息和返回消息 -->
         
< wsdl:input  message ="impl:checkUserLoginRequest"  name ="checkUserLoginRequest" />
         
< wsdl:output  message ="impl:checkUserLoginResponse"  name ="checkUserLoginResponse" />
         
< wsdl:fault  message ="impl:ApplicationException"  name ="ApplicationException" />
      
</ wsdl:operation >
   
</ wsdl:portType >


2How部分

< wsdl:binding  name ="checkUserLoginServiceSoapBinding"  type ="impl:CheckUserLoginMgr" >
      
< wsdlsoap:binding  style ="rpc"  transport ="http://schemas.xmlsoap.org/soap/http" />
      
< wsdl:operation  name ="checkUserLogin" >
         
< wsdlsoap:operation  soapAction ="" />
         
< wsdl:input  name ="checkUserLoginRequest" >
            
< wsdlsoap:body  encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/"  namespace ="http://localhost:7001/webModule/services/checkUserLoginService"  use ="encoded" />
         
</ wsdl:input >
         
< wsdl:output  name ="checkUserLoginResponse" >
            
< wsdlsoap:body  encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/"  namespace ="http://localhost:7001/webModule/services/checkUserLoginService"  use ="encoded" />
         
</ wsdl:output >
         
< wsdl:fault  name ="ApplicationException" >
            
< wsdlsoap:fault  encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/"  name ="ApplicationException"  namespace ="http://localhost:7001/webModule/services/checkUserLoginService"  use ="encoded" />
         
</ wsdl:fault >
      
</ wsdl:operation >
   
</ wsdl:binding >

   

3Where部分

    < wsdl:service  name ="CheckUserLoginMgrService" >

      
< wsdl:port  binding ="impl:checkUserLoginServiceSoapBinding"  name ="checkUserLoginService" >

         
< wsdlsoap:address  location ="http://localhost:7001/webModule/services/checkUserLoginService" />

      
</ wsdl:port >

   
</ wsdl:service >


3SOAPSimple Object Application Propotol

SOAP作用:请求(request)消息将客户端请求消息发给服务器

            答复(response)消息,从服务器返回给客户端消息

服务A需要创建相应得SOAP请求消息,并发给服务B。包括服务接口,服务接口方法,参数值等信息。通过SOAP/HTTP传输方式传到服务BWSDL文件中指定得URL地址

4UDDL

Universal Description, Discovery and Integration将自己得服务注册到相应得UDDL商用注册网站上去

以资源共享的方式由多个运作者一起以Web Service的形式运作UDDI商业注册中心。

  UDDI计划的核心组件是UDDI商业注册,它使用XML文档来描述企业及其提供的Web Service

  UDDI商业注册提供三种信息:

  White Page包含地址、联系方法、已知的企业标识。

  Yellow Page包含基于标准分类法的行业类别。

  Green Page包含关于该企业所提供的Web Service的技术信息,其形式可能是指向文件或URL的指针,而这些文件或URL是为服务发现机制服务的。

你可能感兴趣的:(Web Service简介)