WTP1.0开发WebService之使用WSDL生成Service

简介:
1.确定安装了Apache Tomcat(这里使用Tomcat5.0),新建一个dynamic Web project取名为 AreaProj
 
2.示例中使用的WSDL文档。(该文档定义了一个计算长方形面积的服务)
AreaService.wsdl
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://tempuri.org/AreaService/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AreaService"
targetNamespace="http://tempuri.org/AreaService/">
  <wsdl:types>
<xsd:schema targetNamespace=http://tempuri.org/AreaService/
 xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:element name="area" type="xsd:float"/>
      <xsd:element name="parameters" type="tns:dimensions"/>
      <xsd:complexType name="dimensions">
          <xsd:sequence>
                 <xsd:element name="width" type="xsd:float"></xsd:element>
                 <xsd:element name="height" type="xsd:float"></xsd:element>
          </xsd:sequence>
      </xsd:complexType>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="CalculateRectAreaResponse">
    <wsdl:part element="tns:area" name="area"/>
  </wsdl:message>
  <wsdl:message name="CalculateRectAreaRequest">
    <wsdl:part element="tns:parameters" name="parameters"/>
  </wsdl:message>
  <wsdl:portType name="AreaService">
    <wsdl:operation name="CalculateRectArea">
      <wsdl:input message="tns:CalculateRectAreaRequest"/>
      <wsdl:output message="tns:CalculateRectAreaResponse"/>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="AreaServiceSOAP" type="tns:AreaService">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="CalculateRectArea">
      <soap:operation soapAction="http://tempuri.org/AreaService/NewOperation"/>
      <wsdl:input>
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="AreaService">
    <wsdl:port binding="tns:AreaServiceSOAP" name="AreaServiceSOAP">
      <soap:address location="http://tempuri.org"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>
 
 
3.将AreaService.wsdl放在/WebContent下,鼠标右键选中该文件,选择New-Other-WebService,配置如下。 
 
4.一路Next,如果没有启动Tomcat,会提示Start Server。最后选择Finish
 
5.在/src下生成部分java文件,其中一个AreaServiceSOAPImpl.java。将其内容修改为如下所示。
 
6.在/WebContent/wsdl/下会生成AreaServiceSOAP.wsdl。鼠标右键选中该文件,选择New-Other-WebService Client,配置如下。
 
7.点击两个Next后,到达Client环境配置。配置如下。
 
8.选择Finish。出现如下画面。
 
9.选择calculateRectArea进行测试,计算长方形面积。测试结果如下。
 
10.查看传递的SOAP
request部分:
 
response部分:
 


本文转自zhangjunhd51CTO博客,原文链接:http://blog.51cto.com/zhangjunhd/21440,如需转载请自行联系原作者
相关文章
|
5月前
|
XML Java 应用服务中间件
WebService - Axis2与Spring整合并发布多个service(同样使用services.xml)
WebService - Axis2与Spring整合并发布多个service(同样使用services.xml)
389 0
|
5月前
|
Java 应用服务中间件 Spring
WebService - CXF 与Spring整合(Service+Client)
WebService - CXF 与Spring整合(Service+Client)
52 0
使用C4C ABSL调用外部web service创建service request
使用C4C ABSL调用外部web service创建service request
使用C4C的web service创建Service Request
使用C4C的web service创建Service Request
112 0
|
Java 应用服务中间件 网络架构
|
5月前
|
缓存 应用服务中间件 数据库
Python Web Service开发及优化
随着互联网的快速发展,Web服务已成为现代技术的核心。Python作为一种功能强大且易于学习的编程语言,在Web服务开发领域占据着重要地位。Python Web服务开发的重要性在于它能够提供高效、可扩展且易于维护的解决方案。本篇博客将探讨如何使用Python的Flask框架、Gunicorn WSGI服务器和Nginx网页服务器来实现高性能的Web服务。
|
5月前
|
XML Java 应用服务中间件
WebService - Axis2基于JAX-WS开发WebService并发布多个WebService
WebService - Axis2基于JAX-WS开发WebService并发布多个WebService
80 0
|
5月前
|
Java 应用服务中间件 Spring
WebService - Axis2使用services.xml进行开发server与client(未与Spring整合)
WebService - Axis2使用services.xml进行开发server与client(未与Spring整合)
126 0
|
5月前
|
Java 应用服务中间件 Spring
WebService - CXF开发Server和Client(main方法测试)
WebService - CXF开发Server和Client(main方法测试)
81 0
下一篇
无影云桌面