作者:http://blog.csdn.net/dreamfly88/article/details/52350370

因为工作需要,数据传输部分需要使用webservice实现,经过两天的研究,实现了一个简单的例子,具体方法如下。

首先需要新建一个项目,如图:

下一步点击finish,然后会生成一个webservice项目,在HelloWorld类里面写自己的方法,在file下编译一下这个类,不编译,idea会提示不通过,编译后需要将为该服务发布WSDL文件,此文件必须生成,如下图:

选择需要发布的服务

然后部署到TOMCAT,如图,这里需要注意的是需要引入这个库才能正常运行webservice

启动tomcat后,在浏览器中敲入如下代码:localhost:8080/services 回车测试webservice是否部署成功:

然后编写客户端测试代码,如下:

主要代码:

服务端:

  1. package example;
  2. import javax.jws.WebService;
  3. /**
  4. * Created by zhangqq on 2016/8/26.
  5. */
  6. public class HelloWorld {
  7. public String sayTitle(String from) {
  8. String result = "title is " + from;
  9. System.out.println(result);
  10. return result;
  11. }
  12. public String sayBody(String Other) {
  13. String result = "-------------body is-------------- " + Other;
  14. System.out.println(result);
  15. return result;
  16. }
  17. public String sayAll(String title,String body) {
  18. String result ="--------title:"+title+ "----------------/r/nbody:--------------------------- " + body;
  19. System.out.println(result);
  20. return result;
  21. }
  22. }

客户端:

  1. package test;
  2. import org.apache.axis.client.Call;
  3. import org.apache.axis.client.Service;
  4. import org.apache.axis.utils.StringUtils;
  5. import javax.xml.rpc.ServiceException;
  6. import java.net.MalformedURLException;
  7. /**
  8. * Created by zhangqq on 2016/8/29.
  9. */
  10. public class WebSvrClient {
  11. public static void main(String[] args) {
  12. String url = "http://localhost:8080/services/HelloWorldService";
  13. String method = "sayTitle";
  14. String[] parms = new String[]{"abc"};
  15. WebSvrClient webClient = new WebSvrClient();
  16. String svrResult = webClient.CallMethod(url, method, parms);
  17. System.out.println(svrResult);
  18. }
  19. public String CallMethod(String url, String method, Object[] args) {
  20. String result = null;
  21. if(StringUtils.isEmpty(url))
  22. {
  23. return "url地址为空";
  24. }
  25. if(StringUtils.isEmpty(method))
  26. {
  27. return "method地址为空";
  28. }
  29. Call rpcCall = null;
  30. try {
  31. //实例websevice调用实例
  32. Service webService = new Service();
  33. rpcCall = (Call) webService.createCall();
  34. rpcCall.setTargetEndpointAddress(new java.net.URL(url));
  35. rpcCall.setOperationName(method);
  36. //执行webservice方法
  37. result = (String) rpcCall.invoke(args);
  38. } catch (Exception e) {
  39. e.printStackTrace();
  40. }
  41. return result;
  42. }
  43. }

实例地址:

源码下载地址

Idea实现WebService实例 转的更多相关文章

  1. SAP和Java系统的Webservice实例

    简介: 关于Webservice的概念和原理,简单来讲,Webservice是一种基于SOAP传输协议,用WSDL描述,用XML封装数据的接口技术.由于其跨平台.跨防火墙.开发成本低.开发周期短等优势 ...

  2. PHP调用Webservice实例

    原文 PHP调用Webservice实例 NuSoap是PHP环境下的WebService编程工具,用于创建或调用WebService.它是一个开源软件,是完全采用PHP语言编写的.通过HTTP收发S ...

  3. Java 使用Axis实现WebService实例

    在上一篇WebService实例中,基于jdk1.6以上的javax.jws 发布webservice接口.这篇博文则主要用eclipse/myeclipse 使用axis插件进行发布和调用WebSe ...

  4. 利用Java编写简单的WebService实例

    使用Axis编写WebService比較简单,就我的理解,WebService的实现代码和编写Java代码事实上没有什么差别,主要是将哪些Java类公布为WebService. 以下是一个从编写測试样 ...

  5. XFire创建WebService实例应用

    [转自] http://clq9761.iteye.com/blog/1261963 XFire创建WebService实例应用 XFire使得在JavaEE应用中发布Web服务变得轻而易举.和其他W ...

  6. 利用Java编写简单的WebService实例-转载

    使用Axis编写WebService比较简单,就我的理解,WebService的实现代码和编写Java代码其实没有什么区别,主要是将哪些Java类发布为WebService.下面是一个从编写测试例子到 ...

  7. 实例化WebService实例对象时出现localhost未引用命名空间

    //实例化WebService实例对象 localhost.WebService WebserviceInstance = new localhost.WebService(); 在实例化WebSer ...

  8. C#最简单最完整的webservice实例

    http://fyinthesky.blog.163.com/blog/static/3555251720110115227337/ 我做java,但最近接触crm所以必须研究一下C#中的webser ...

  9. CXF整合Spring发布WebService实例

    一.说明: 上一篇简单介绍了CXF以及如何使用CXF来发布一个简单的WebService服务,并且介绍了客户端的调用. 这一篇介绍如何使用CXF与spring在Web项目中来发布WebService服 ...

随机推荐

  1. javascript 写农场迭代

    /** * 农场一头小母牛 * 每年生头小母牛 * 母牛五岁产母牛 * 二十年上多少牛 */ 划分程序,母牛只管自己的年龄能不能产牛仔,母牛是model同时也是工厂 农场只管养牛,收获新牛. 一年一个 ...

  2. Activity的测量(Measure)、布局(Layout)和绘制(Draw)过程分析

    一个Android应用程序窗口里面包含了很多UI元素,这些UI元素是以树形结构来组织的,即它们存在着父子关系,其中,子UI元素位于父UI元素里面,因此,在绘制一个Android应用程序窗口的UI之前, ...

  3. 安装 SQL Server 2005 的硬件和软件要求(官方全面)

    SQL Server 2005 安装要求 本主题介绍了安装 SQL Server 205 的硬件和软件要求,以及查看安装文档的说明. 硬件和软件要求(32 位和 64 位) 访问 SQL Server ...

  4. Python 集合(set)使用

    1.python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差 ...

  5. nginx 反向代理 odoo, 速度提升

    1: sudo apt-get  install nginx 2:  add server: 在/etc/nginx/sites-enabled 中增加一个可用的server. 文件如下图所示 3:重 ...

  6. linux中C的静态库和动态库分析

    从开始学C语言写第一个"hello world"历程到现在,我依然困惑于到底这个程序完整的执行流程是什么样的.不过,现在我正在尝试一点一点的揭开它的面纱.现在,我尝试分析linux ...

  7. Spring MVC 环境搭建(maven+SpringMVC+mybatis+Freemarker)

    Spring MVC 环境搭建(maven+SpringMVC+mybatis+Freemarker) 一.准备工作 1.Eclipse Java EE IDE(4.4.1) 2.JDK 3.Tomc ...

  8. FFMPEG视音频编解码零基础学习方法-b

    感谢大神分享,虽然现在还看不懂,留着大家一起看啦 PS:有不少人不清楚“FFmpeg”应该怎么读.它读作“ef ef em peg” 0. 背景知识 本章主要介绍一下FFMPEG都用在了哪里(在这里仅 ...

  9. Android入门教程之我见

    真正的从安卓入门学习到实际工作也差不多一年时间了,也做了几个项目.在这期间经历了一开始学习Android的基本知识后仍旧无从下手,不知道如何开始开发一个app,到现在也开始学会注意Android架构的 ...

  10. hdu 3018

    欧拉回路的题: 主要利用的是并查集,为了节省时间,压缩了它的路径: 代码: #include<cstdio> #include<cstring> #define maxn 10 ...