Spring Web Services 生成 WSDL 文件

文章目录

    Spring Web Services 简称 Spring-WS.

    关键词

    • document-driven Web services
    • contract-first SOAP service development
    • 支持将 incoming XML 请求映射到 object
    • 支持各种方式的 XML 解析
    • WS-Security 加密、解密 SOAP 协议

    环境要求

    Spring-WS 2.2.0

    • Java 1.6 以上
    • Spring 3.2 以上

    WSDL 中复用 XSD 定义

    <simpleType name="AirportCode">
        <restriction base="string">
            <pattern value="[A-Z][A-Z][A-Z]"/>
        </restriction>
    </simpleType>
    

    例如,一个 WSDL 文件中要多处用到一个数据类型,那么就可以 import xxx.xsd

    Spring-WS 需要手写 WSDL 文件么

    不需要,只需要写 XSD 文件 (实际上 XSD 也不需要手写,可以由 XML 自动生成,做些修改即可),并基于规则自动生成 WSDL 文件。

    XML -> XSD -> WSDL

    由 XML 生成 XSD 的方法 Generate XSD from XML

    XSD 如何生成 WSDL? 这个不需要通过 XSD 直接生成,而是通过新建一个 Spring-WS 的配置文件,动态生成

    例如:

    <sws:dynamic-wsdl id="holiday"                                                                                      
        portTypeName="HumanResource"                                                                                      
        locationUri="/holidayService/"                                                                                   
        targetNamespace="http://mycompany.com/hr/definitions">                                                             
      <sws:xsd location="/WEB-INF/hr.xsd"/>                                                                             
    </sws:dynamic-wsdl>
    

    参考 Spring-WS 官方文档的 Publishing the WSDL

    参考

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式