最近要和其他业务系统进行数据交换,选择了webservice方案,于是查了一下网上的用法。首先是做一个天气的查询例子,看着挺简单,可实际动手做起来发现坑很多,费了半天劲终于调通了,于是记录下来。

1,在eclipse里新建一个java项目,在src里添加一个文件,命名为WeatherWebService.wsdl。

2,在浏览器中访问地址:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl,这个是天气预报的webservice描述地址,复制里面的内容,注意从<wsdl:definitions 标签开始复制一直到<wsdl:definitions标签结束。粘贴到java项目的文件WeatherWebService.wsdl中。

3,此时重点来了,选中文件,右键选择web service-generate client会弹出以下窗口

如果没有错误提示直接点击Finish按钮即可完成引用。但往往是会有一个错误提示无法完成

4 这时候就会自动生成引用的相关代码:

5 这时候就可以写一个调用的测试代码了,新建一个测试类,在main函数里编写一个得到北京天气的测试代码。

package cn.com.test;
import java.rmi.RemoteException;
import javax.xml.rpc.ServiceException;
import cn.com.WebXml.WeatherWebService;
import cn.com.WebXml.WeatherWebServiceLocator;
import cn.com.WebXml.WeatherWebServiceSoap;
public class TestWeathers {

public static void main(String[] args) {
   WeatherWebService service1=new WeatherWebServiceLocator();
   WeatherWebServiceSoap serviceSoap = null;
    try {
       serviceSoap = service1.getWeatherWebServiceSoap();
    } catch (ServiceException e) {
       e.printStackTrace();
   }
    String[] cityweather = null;
    String[] city1={"北京","上海","深圳","广州"};
     try {
         cityweather = serviceSoap.getWeatherbyCityName("北京");//不输入默认为上海市
     } catch (RemoteException e) {
         e.printStackTrace();
    }
    for (String s : cityweather) {
        System.out.println(s);
     }
  }
}

结果:

利用java webservice调用天气预报实践的更多相关文章

  1. 利用java反射调用类的的私有方法--转

    原文:http://blog.csdn.net/woshinia/article/details/11766567 1,今天和一位朋友谈到父类私有方法的调用问题,本来以为利用反射很轻松就可以实现,因为 ...

  2. c#与java webservice调用问题

    问题描述一: c#调用java写的websrevice,对方接收到的参数与实际传的值不一致,返回的时候值也获取不到,为null. 该参数为普通的string类型,因此不存在类型转换的问题. 处理: 使 ...

  3. C#动态webservice调用接口 (JAVA,C#)

    C#动态webservice调用接口 using System; using System.Collections; using System.IO; using System.Net; using ...

  4. paip.myeclipse7 java webservice 最佳实践o228

    paip.myeclipse7  java webservice 最佳实践o228 java的ws实现方案:jax-ws>>xfire ws的测试工具  webservice测试调用工具W ...

  5. C#调用WebService实现天气预报 http://www.webxml.com.cn

     C#调用WebService实现天气预报 2011-02-21 14:24:06 标签:天气预报 休闲 WebServices 职场 C# 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始 ...

  6. Java 之 调用.Net的 WebService 整理

    最近做一个 java 调用 .net 服务的项目,其中 .net做了一个WebService,需要java来调用. 最开始.net的Service代码如下: using System; using S ...

  7. c#调用带有安全认证的java webservice

    最近使用c#调用另外一个同事写的java webservice耽误了很多时间,网上资料不太完整,走了很多弯路,希望对大家有帮助. 基本思路是1.拼装soap使用http post ,主要将验证身份信息 ...

  8. Java动态调用webService,axis2动态调用webService

    Java动态调用webService axis2动态调用webService >>>>>>>>>>>>>>>& ...

  9. 解析android framework下利用app_process来调用java写的命令及示例

    解析android framework下利用app_process来调用java写的命令及示例 在android SDK的framework/base/cmds目录下了,有不少目录,这些目的最终都是b ...

随机推荐

  1. resin4.0.25 安装配置 及结合eclipse开发

    resin4.0.25 安装配置 及结合eclipse开发 本文大部分内容是对官网的翻译,及自己配置后的一些体会. 一.  基于win  ,resin基本安装1,安装jdk1.6或更高版本2,配置环境 ...

  2. Deep learning with Python 学习笔记(10)

    生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...

  3. Linux 使用 ssh 命令远程连接另一台 Linux

    用 Linux 系统的 ssh 命令远程连接另一台 Linux 机器的命令 #ssh 用户名@主机名(IP地址) 例: #ssh root@10.41.24.138                  ...

  4. JavaWeb学习 (五)————Servlet(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  5. macOS 系统 .DS_Store 文件详解

    .DS_Store 文件 .DS_Store 是 Finder 用来存储这个文件夹的显示属性的:比如文件图标的摆放位置. 显示/隐藏 Mac 隐藏文件 显示:defaults write com.ap ...

  6. MPLS笔记

    Label一般是由运营商端的Router添加. 去往相同网段的数据包打相同的标签 基于每个数据包的负载均衡基于目的地的负载均衡 启用CEF无非做两件事:1.把路由表中条目进行优化,加入FIB:2.把A ...

  7. Maven deploy 部署 jar+pom 到 Nexus 私服

    经验之谈 工作中,我们常常需要将基础架构部门的 jar 包提供给业务部门的同事使用,那么,需要将 jar 包 deploy 到 nexus 私服上,网上资料不是很多,这里说一下具体细节. 首先,是打 ...

  8. NLog 配置

    之前我介绍过如何使用log4net来记录日志,但最近喜欢上了另一个简单好用的日志框架NLog. 关于NLog和log4net的比较这里就不多讨论了,感兴趣的朋友可以参看.NET日志工具介绍和log4n ...

  9. WebService学习概念总结

    概念总结:WebSerevice是一种跨编程语言和跨操作系统平台的远程调用技术传输协议:HTTP技术构成:XML+XSD,SOAP,WSDL    XML封装数据格式,解决数据表示问题    XSD定 ...

  10. cocoapods使用-库托管到svn或者github

    下拉svn库(自定义库或者第三方库)到工程中:   1. 若未安装,请安装cocoapods:    http://www.cnblogs.com/sunjianfei/p/6089231.html ...