zoukankan      html  css  js  c++  java
  • ZendStudio WSDL编辑器

    如何用Zend Stuido 的WSDL编辑器
    File ->Other->Webservice->WSDL


    选择Next

    选择Finish.生成如下图所示的TestSoap.wsdl

    TestSoapSoap下面填写php webService 如myservice.php
    NewOption:添加方法。WebService里需要提供给别人调用的方法名
    input :设置输入参数名和类型
    output:设置返回值。
    Add part:如果在input里添加,就是添加多个参数
    示例:


    看看TestSoap.wsdl代码
    <?xml version="1.0" encoding="UTF-8"?>
    <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://localhost/test/soap" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="test" targetNamespace="http://localhost/test/soap">
      
    <wsdl:types>
        
    <xsd:schema targetNamespace="http://localhost/test/soap">
          
    <xsd:element name="Add">
            
    <xsd:complexType>
              
    <xsd:sequence>
                
    <xsd:element name="in" type="xsd:string"/>
              
    </xsd:sequence>
            
    </xsd:complexType>
          
    </xsd:element>
          
    <xsd:element name="AddResponse">
            
    <xsd:complexType>
              
    <xsd:sequence>
                
    <xsd:element name="out" type="xsd:int"/>
              
    </xsd:sequence>
            
    </xsd:complexType>
          
    </xsd:element>
                
    <xsd:element name="b" type="xsd:string"></xsd:element>
                
    <xsd:element name="Add_fault" type="xsd:string"></xsd:element>
                
    <xsd:element name="Sub">
                    
    <xsd:complexType>
                        
    <xsd:sequence>
                            
    <xsd:element name="in" type="xsd:string"></xsd:element>
                        
    </xsd:sequence>
                    
    </xsd:complexType>
                
    </xsd:element>
                
    <xsd:element name="SubResponse">
                    
    <xsd:complexType>
                        
    <xsd:sequence>

                            
    <xsd:element name="out" type="xsd:int"></xsd:element>
                        
    </xsd:sequence>
                    
    </xsd:complexType>
                
    </xsd:element>
                
    <xsd:element name="MulResponse">
                    
    <xsd:complexType>
                        
    <xsd:sequence>

                            
    <xsd:element name="out" type="xsd:int"></xsd:element>
                        
    </xsd:sequence>
                    
    </xsd:complexType>
                
    </xsd:element>
        
    </xsd:schema>
      
    </wsdl:types>
      
    <wsdl:message name="AddRequest">

            
    <wsdl:part name="a" type="xsd:int"></wsdl:part>
            
    <wsdl:part name="b" type="xsd:int"></wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="AddResponse">
        
    <wsdl:part element="tns:AddResponse" name="AddReturn"/>
      
    </wsdl:message>
      
    <wsdl:message name="Add_faultMsg">

      
    </wsdl:message>
      
    <wsdl:message name="SubRequest">
          
    <wsdl:part name="a" type="xsd:int"></wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="SubResponse">
          
    <wsdl:part name="SubReturn" element="tns:SubResponse"></wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="MulRequest">
          
    <wsdl:part name="a" type="xsd:int"></wsdl:part>
          
    <wsdl:part name="b" type="xsd:int"></wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="MulResponse">
          
    <wsdl:part name="MulReturn" element="tns:MulResponse"></wsdl:part>
      
    </wsdl:message>
      
    <wsdl:portType name="test">
        
    <wsdl:operation name="Add">
          
    <wsdl:input message="tns:AddRequest"/>
          
    <wsdl:output message="tns:AddResponse"/>
            
    </wsdl:operation>
        
    <wsdl:operation name="Sub">
            
    <wsdl:input message="tns:SubRequest"></wsdl:input>
            
    <wsdl:output message="tns:SubResponse"></wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="Mul">
            
    <wsdl:input message="tns:MulRequest"></wsdl:input>
            
    <wsdl:output message="tns:MulResponse"></wsdl:output>
        
    </wsdl:operation>
      
    </wsdl:portType>
      
    <wsdl:binding name="testSOAP" type="tns:test">
        
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        
    <wsdl:operation name="Add">
          
    <soap:operation soapAction="http://localhost/test/soap/NewOperation"/>
          
    <wsdl:input>
            
    <soap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output>
            
    <soap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
      
    </wsdl:binding>
      
    <wsdl:service name="test">
        
    <wsdl:port binding="tns:testSOAP" name="testSOAP">
          
    <soap:address location="http://localhost/test/soap/myservice.php"/>
        
    </wsdl:port>
      
    </wsdl:service>
    </wsdl:definitions>
    这就是WSDL源代码。如何引用,如何使用参考http://www.cnblogs.com/likwo/archive/2009/09/18/1569036.html
    注意事项:在WSDL源代码里面发现wsdl:operation 标签里只有Add 方法,而其他的Sub Mul等方法都没有添加,
    这个时候请跟新Bind,重新生成该节点信息。
  • 相关阅读:
    修复PLSQL Developer 与 Office 2010的集成导出Excel 功能
    Using svn in CLI with Batch
    mysql 备份数据库 mysqldump
    Red Hat 5.8 CentOS 6.5 共用 输入法
    HP 4411s Install Red Hat Enterprise Linux 5.8) Wireless Driver
    变更RHEL(Red Hat Enterprise Linux 5.8)更新源使之自动更新
    RedHat 5.6 问题简记
    Weblogic 9.2和10.3 改密码 一站完成
    ExtJS Tab里放Grid高度自适应问题,官方Perfect方案。
    文件和目录之utime函数
  • 原文地址:https://www.cnblogs.com/likwo/p/1569531.html
Copyright © 2011-2022 走看看