java webservice 实例_Java WebService 简单实例(附实例代码)

java webservice 实例_Java WebService 简单实例(附实例代码)前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作。一、准备工作(以下为本实例使用工具)1、MyEclipse10.7.12、JDK1.6.0_22二、创建服务端1、创建【WebServiceProject】,命名为【TheService】。2、创建【Class】类,命名为【ServiceHello】,位于【com.hyan.service】包下。3、编写供客户端调…

大家好,又见面了,我是你们的朋友全栈君。

前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作。

一、准备工作(以下为本实例使用工具)

1、MyEclipse10.7.1

2、JDK 1.6.0_22

二、创建服务端

1、创建【Web Service Project】,命名为【TheService】。

fc1d5ae6752c5dd3648ceed29253ee84.png

025c7eb2236662c8ef0960fd798429d2.png

2、创建【Class】类,命名为【ServiceHello】,位于【com.hyan.service】包下。

18b2b11752c0d8d496c08e6c1ed7c69f.png

0ff576456fbc7aeeb1a4b381d443eae5.png

3、编写供客户端调用的方法,即编译方法代码。

9087bd00a11fdce9ec7150f90bf59ba8.png

4、进行编译

说明:编译失败的话,请将该项目引用的jdk设置为1.6.0_17版本或更高版本

7f224289e547bb29d98a3932ce020bf4.png

6faa24fa524d63691a345ab0ea333b2c.png

5、测试结果

测试地址:http://localhost:9001/Service/ServiceHello?wsdl

d5b1afe12e06b78259d08d9e24a6a0ba.png

三、生成客户端

1、创建【Web Service Project】,命名为【TheClient】。

af168b95a275649b77cdd170cfd09069.png

86f46ac035472424df98368632793937.png

4bed160176401dcdc4af677a54d63e82.png

2、命令提示窗口执行生成命令。

格式:wsimport -s “src目录” -p “生成类所在包名” -keep “wsdl发布地址”

示例:

wsimport -s G:\\workspace\\webService\\TheClient\\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello?wsdl

说明:

1)”src目录”地址不可含空格

2)“wsdl发布地址”不要漏了“?wsdl”

4330fa8bc34c091cc37b1e345bdd31f9.png

3、刷新项目,检查生成类

4cd4fc31b70601eca846776987679640.png

f9f306dd9e394b77089b0ee235ea6e41.png

四、最终测试

1、创建【Class】类,命名为【ServiceTest】,位于【com.hyan.test】包下。

e30e37dde315ef49d2425c92459d8ecc.png

fe983e28e7be1c3f739bcecf3ab0ba04.png

b1c998d3f88e63a8bdaf3364cef9057f.png

2、编写测试方法,调用服务端方法,并打印返回的结果。

49975fc8dc5e9fb4f6f6c568fbec992a.png

e76e95878cb707915a0090981219b4f0.png

五、注意事项

1、JDK版本过低问题

报类似如下的异常:runtime modeler error: Wrapper class com.hyan.service.jaxws.GetValue is not found. Have you run APT to generate them?

97b8b6a5cc88f22e46446e2bfb19b975.png

原因:JDK版本低于1.6.0_17

解决方法:调整该服务端项目所引用的JDK版本为安装的高版本JDK

7cd57c15b7f0174ef483f6eb1012d2a7.png

62ada4c6c69199faa7d3746cd96db3a0.png

be39fb8366547ad437dd280bf3e150a6.png

c537515fb9ccba52e04a7537f4b23542.png

2999786ff78057ca1bd6b1cf3bdb82c7.png

8d2239a66a9727542af40446d2a43dae.png

f7676d08cdfbd5e4d835271637e4fdab.png

5964afdc976aa998f83a41bee1ee7cde.png

2、生成命令路径含空格问题

报类似如下的异常:directory not found: G:\SVN_FILE\GB\05

e62fdc052e246678ea69e53737a2878c.png

原因:客户端src路径不可含有空格

解决方法:在不含空格路径的文件夹下重新创建客户端即可。

3、生成命令不完整问题

报类似如下的异常:[ERROR] failed.noservice=Could not find wsdl:service in the provided WSDL(s):

db1344d86f80ee4f905641b90ab7a48d.png

原因:生成命令末尾缺少“?wsdl”

解决方法:补上即可。

错误不完整的命令示例:

wsimport -s G:\\workspace\\webService\\TheClient\\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello

正确完整的命令示例:

wsimport -s G:\\workspace\\webService\\TheClient\\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello?wsdl

六、示例源码

服务端源码  下载

客户端源码  下载

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162646.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ORA-01017解决方案「建议收藏」

    ORA-01017解决方案「建议收藏」ora-01017是用户登录的报错。解决思路:1)确认所登用户的状态。可能是被锁了,可能是密码过期状态。修改之,即可2)当然是确认用户名密码是否输入正确。不确定密码的话可以重设。3)oracle-12C有了数据库容器概念。所登用户是否在PDBORCL里,tnsnames.ora文件里是否配置了PDBORCL,登录时是否选中了PDBORCL4)所登用户是否是sysdba。是的话登录语句要加assysdba这4步确定好了,能解决100%的ora-01017报错情况。…

    2022年5月31日
    78
  • php中的<?= ?>替换<?php echo ?>

    php中的<?= ?>替换<?php echo ?>

    2021年11月4日
    50
  • Navicate12激活教程(完整详细版)

    Navicate12激活教程(完整详细版)

    2020年11月9日
    232
  • 工作流程引擎:流程引擎对比「建议收藏」

    工作流程引擎:流程引擎对比「建议收藏」一.简介工作流引擎LiteFlow 需要提前定义好执行流程,不支持分布式执行,支持xml,json,yml,支持逻辑执行AirFlow ***** 支持分布式算子执行,不支持java算子执行,支持pythonDolphinScheduler ***** Azkaban可以跨服务执行,跨平台执行,flow支持dsl语法Oozie managerhadoopjobs,大数据任务调度框架KettleServerFlowable 与Activiti非常类似A

    2022年10月20日
    2
  • shift后门结论_连续五次shift

    shift后门结论_连续五次shift经常会看到一些服务器被入侵后,入侵者会留下一些各式各样的shift后门,五花八门的,各位网络管理员也看看自己的服务器的setch.exe是否被人替换了。这个直接5次shift后进入分区这个比较巧妙了,正常的最后那个按钮是灰色的,前两个是不可点击的,这个恰恰想法,点击后,会弹出一个cmd窗口。这个是比较常见的需要输…

    2022年9月18日
    2
  • 有什么优质的计算机专业书籍?操作系统、计算机网络、计算机组成、数据结构、数据库…..「建议收藏」

    有什么优质的计算机专业书籍?操作系统、计算机网络、计算机组成、数据结构、数据库…..「建议收藏」大家好,我是小林哥。平日里,大家都喊程序员加班多很辛苦,动不动就掉头发,但干的还是很香的,毕竟大多数公司钱还是给的很到位的,今年毕业应届生的我见到好多动不动就月薪20K~30K的,真让人两眼泪酸酸,当然这离不开他们大学期间的努力。讲真,没什么家庭背景的人,选择当程序员确实是比较好的选择了,原因有二:首先,当今互联网、AI人工智能、大数据等都是高速发展的行业,自然人才需求很多,薪资也相对其他传统行业高;第二,纯粹看你技术能力,只要自己愿意付出努力,技术能力肯定会慢慢提高上来,而且现在比起几十年

    2022年5月2日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号