作者: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. 数组-去重、排序方法、json排序

    1.数组去重 /*方法一: 1,'1' 会被认为是相同的; 所有hash对象,如:{x;1},{y:1}会被认为是相同的 //10ms */ Array.prototype.unique=functi ...

  2. chgrp命令

    chgrp命令用于变更文件或目录的所属群组. 在UNIX系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理.您可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆 ...

  3. 玩转HTML5移动页面(优化篇)

    原文:http://www.grycheng.com/?p=472 承接上文<玩转HTML5移动页面(动效篇)>,上次说的是让页面动起来的一些小技巧.而页面动起来的根基是功能可用的页面,因 ...

  4. 虚拟机配置网络 vmware 【nat方式】

    先看下物理机和虚拟机网卡的设置: 虚拟机操作系统: 联网方式: 好了,现在进入正题,配置: 首相配置/etc/sysconfig/network-scripts/ifcfg-eth0,这里配置ip和d ...

  5. PHPExcel1

    下面是总结的几个使用方法 include 'PHPExcel.php'; include 'PHPExcel/Writer/Excel2007.php'; //或者include 'PHPExcel/ ...

  6. POJ 3687 Labeling Balls 逆向建图,拓扑排序

    题目链接: http://poj.org/problem?id=3687 要逆向建图,输入的时候要判重边,找入度为0的点的时候要从大到小循环,尽量让编号大的先入栈,输出的时候注意按编号的顺序输出重量, ...

  7. NET笔记——IOC详解和Unity基础使用介绍

    说起IOC,可能很多初学者不知道是用来做什么的,今天正好有点时间,就来扫扫盲,顺便巩固下自己. IOC全称是Inversion Of Control,意为控制反转(这些自然百度也有),可什么是控制反转 ...

  8. VC释放EXE资源文件

    原文地址:http://blog.csdn.net/wangningyu/article/details/4378378 今天有个朋友问到VC能否释放多个EXE.DLL或WAV等文件,我便做了个实例给 ...

  9. Word图片显示不完整

    选中图片和上下文字,段落里选择单倍行距,其他行距不行.

  10. 【HDU 2255】奔小康赚大钱 (最佳二分匹配KM算法)

    奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...