`
newleague
  • 浏览: 1504903 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

调用天气预报Web Service客户端

阅读更多

(结合JAVA的WebService支持.pdf进行理解)

http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl打开后另存为atherWebService.wsdl,然后将文件放到cxf的bin目录下,执行dos进入cxf的bin目录下,运行wsdl2java atherWebService.wsdl ,会生成文件与bin目录下)

一、用cxf的wsdl2java工具生成客户端代码(使用的是apache-cxf-2.2.3)

二、书写客户端调用服务:

/**
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

package cn.com.webxml;

import java.util.ArrayList;
import java.util.List;

import javax.xml.namespace.QName;
import javax.xml.ws.Service;
import javax.xml.ws.soap.SOAPBinding;

 

public final class Client {

    private static final QName SERVICE_NAME
        = new QName("http://WebXml.com.cn/", "WeatherWebServiceSoap");
    private static final QName PORT_NAME
        = new QName("http://WebXml.com.cn/", "WeatherWebServiceSoapPort");


    private Client() {
    }

    public static void main(String args[]) throws Exception {
        Service service = Service.create(SERVICE_NAME);
        // Endpoint Address
        String endpointAddress = "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx";

        // Add a port to the Service
        service.addPort(PORT_NAME, SOAPBinding.SOAP11HTTP_BINDING, endpointAddress);
       
        WeatherWebServiceSoap hw = service.getPort(WeatherWebServiceSoap.class);
        List<String> list = hw.getWeatherbyCityName("深圳").getString();
        for(String str:list){
         System.out.println(str); 
        }
    }
}

 

 

 

 

http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

1、

- <wsdl:portType name="WeatherWebServiceSoap">
- <wsdl:operation name="getSupportCity">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>查询本天气预报Web Services支持的国内外城市或地区信息</h3><p>输入参数:byProvinceName = 指定的洲或国内的省份,若为ALL或空则表示返回全部城市;返回数据:一个一维字符串数组 String(),结构为:城市名称(城市代码)。</p><br /></wsdl:documentation>
  <wsdl:input message="tns:getSupportCitySoapIn" />
  <wsdl:output message="tns:getSupportCitySoapOut" />
  </wsdl:operation>
个人理解:
 <wsdl:portType name="WeatherWebServiceSoap"> -》WeatherWebServiceSoap接口
   <wsdl:operation name="getSupportCity">-》              getSupportCity  接口中方法
 <wsdl:input message="tns:getSupportCitySoapIn" />   输入参数,soap消息getSupportCitySoapIn
-》
- <wsdl:message name="getSupportCitySoapIn">
  <wsdl:part name="parameters" element="tns:getSupportCity" /> getSupportCity为参数
  </wsdl:message>
 <wsdl:output message="tns:getSupportCitySoapOut" /> 输出参数,soap消息getSupportCitySoapOut
-》
- <wsdl:message name="getSupportCitySoapOut">
  <wsdl:part name="parameters" element="tns:getSupportCityResponse" />
  </wsdl:message>
getSupportCity参数:
- <s:element name="getSupportCity">
- <s:complexType>
- <s:sequence>
  <s:element minOccurs="0" maxOccurs="1" name="byProvinceName" type="s:string" />
  </s:sequence>
  </s:complexType>
  </s:element>
分享到:
评论

相关推荐

    JAVA调用天气预报WEB服务实例

    总的来说,通过这个`JAVA调用天气预报WEB服务实例`,你可以学习到如何在Java中创建Web服务客户端,理解SOAP请求和响应的处理过程,以及如何解析和使用返回的数据。这对于开发涉及跨系统通信的项目具有很高的实践价值...

    调用天气预报webservice

    6. **weatherclientaxis**:这可能是项目或示例代码的名称,表示一个使用Axis1.4创建的天气预报Web Service客户端。这个压缩包可能包含生成的Java源代码、配置文件和测试代码,供开发者参考和使用。 7. **客户端...

    基于Axis的Web Service客户端调用

    【标题】基于Axis的Web Service客户端调用 在IT领域,Web Service是一种通过网络进行通信的标准协议,它允许不同系统间的应用程序互相交换数据。而Apache Axis是Java平台上的一个开源工具,专门用于创建和部署Web ...

    调用天气预报Web Services实例.rar

    1. **查找服务**:你需要找到提供天气预报信息的Web Service提供商,比如OpenWeatherMap、WorldWeatherOnline等。这些服务通常会提供WSDL(Web Services Description Language)文档,描述服务的接口和操作。 2. **...

    基于Delphi的Web Service 客户端调用

    ### 基于Delphi的Web Service 客户端调用 #### 一、Web Service 概述 ##### 1.1 Web Service 的定义及特点 Web Service 是一种新型的网络应用程序,它具有自包含(Self-Contained)、自描述(Self-Describing)...

    C#天气预报 Web service

    【C#天气预报Web服务详解】 在IT领域,Web服务是一种允许不同系统之间进行通信和交换数据的方法。本文将深入探讨如何使用C#语言在ASP.NET平台上构建一个天气预报Web服务,以及它与HTML前端的交互。 首先,让我们...

    VC++调用天气预报Web services方法总结

    VC++调用天气预报Web services方法总结 本文将详细介绍如何使用VC++调用天气预报Web services方法,包括下载和安装gsoap_2.8.14.zip...通过本文,读者可以学习如何使用VC++调用Web services方法,实现天气预报功能。

    天气预报web service

    - 手机客户端在调用Web Service时,通常需要集成HTTP库(如Android的HttpURLConnection或iOS的NSURLSession)来发送HTTP请求。 - 请求可以是GET或POST方式,携带必要的参数,如城市名称,以获取天气信息。 - ...

    天气预报 Web service

    对于压缩包中的“天气预报”文件,这可能是服务的客户端示例代码或者一个简单的应用,演示如何调用Web服务获取天气信息。而“连网”可能指的是与互联网连接的代码段,确保应用程序能够成功访问Web service。 总结来...

    WebService 的调用天气预报(附源码Demo)

    在这个示例中,我们关注的是如何使用WebService调用天气预报服务。 首先,我们需要了解`wsimport`工具。`wsimport`是Java SDK的一部分,用于从WSDL(Web Service Description Language)文件生成Java客户端存根类。...

    Web Service 解读天气预报WSDL获取天气程序

    在这个特定的项目中,我们关注的是如何使用Web Service来获取天气预报信息,特别是通过解析WSDL(Web Services Description Language)文件。WSDL是一种XML格式,用于定义服务的位置、接口以及如何调用这些服务。 ...

    asp.net2.0 调用websevice 实现天气预报

    在本项目中,“asp.net2.0 调用websevice 实现天气预报”,我们将探讨如何利用ASP.NET 2.0集成Web服务(Web Service)来获取并展示实时天气信息,从而实现一个无刷新的天气预报应用。 首先,Web服务是一种基于XML的...

    天气预报 webservice

    2. Asp.net框架调用Web Service的方法,包括添加服务引用、创建客户端代理、发送请求和处理响应。 3. SOAP协议在Asp.net中的应用,以及XML数据的解析和处理。 4. 如何在Asp.net环境中构建Web应用程序,并将获取的...

    XFire Java Web Service 客户端

    本文将深入探讨XFire Java Web Service客户端的使用和相关知识点。 一、XFire简介 XFire是Apache CXF项目的一个前身,它是一款高效的、开源的Java Web Service实现。XFire的目标是提供一个轻量级、快速且易于使用...

    web service 客户端java例子

    System.out.println("明天的天气预报:" + forecast); ``` 四、RESTful Web服务客户端 1. 使用JAX-RS:JAX-RS简化了创建RESTful服务和客户端的过程。例如,使用`java.net.URL`、`java.net.HttpURLConnection`或第...

    webservice调用天气预报

    总之,"webservice调用天气预报"涉及到使用IDEA创建的Web服务客户端,通过SOAP协议与提供天气预报的Web服务进行交互,获取并解析返回的XML数据,以展示不同城市的天气状况。这个过程中,理解Web服务的基本原理、使用...

    eclipse 生成 Axis2 Web Service 客户端

    - 创建一个测试类来调用Web服务方法。可以在项目中新建一个Java类,例如“TestWebServiceClient”。 - 在这个类中编写代码来实例化服务客户端,并调用相关的Web服务操作。 - 运行测试类,查看控制台输出或结果页面来...

    ASP.NET 天气预报WEB Service

    描述中提到的"天气预报WEB Service"可能包括以下几个核心知识点: 1. **ASP.NET架构**:理解ASP.NET的运行机制,包括页面生命周期、控件模型、状态管理等,这是开发Web服务的基础。 2. **Web服务基础**:了解XML ...

    C#调用WebService实现天气预报

    // 这里会由编译器自动生成,用于实际调用Web服务的方法 } } ``` 接着,我们需要配置服务的URL和端点地址。在Visual Studio中,可以通过添加新的Web引用或服务引用来自动完成此步骤。在代码中,我们可以设置...

    Delphi7调用天气预报WebSevice

    本文将详细讲解如何在Delphi 7这个经典的编程环境中,利用Web Service来获取并显示天气预报信息。 Delphi 7是Embarcadero Technologies公司开发的一款集成开发环境(IDE),以其强大的Object Pascal语言和VCL组件库...

Global site tag (gtag.js) - Google Analytics