一、服务端

创建一个普通的web项目:JaxWS_ri_calculator_server
先把服务端项目完成之后完整的结构示意图展示出来,方便你们做参考:

1、创建提供webservice服务的服务接口

创建一个Web项目,并创建一个提供WebService服务的服务接口
该接口提供的服务:加法运算和乘法运算

2、创建提供webservice服务的服务接口的实现类

创建提供WebService服务的服务接口实现类

3、将JAX-WS RI组件lib目录下的jar包导入工程

使用JAX-WS RI组件来发布webservice服务到服务器上
需要用到JAX-WS RI组件的相应jar包(我是用的是 jaxws-ri-2.3.2 )
为了缺包找不到类的情况出现,所以把所有jar包都导入。

找到lib目录

4、配置sun-jaxws.xml文件

关于该文件中的配置:从*JAX-WS RI组件*安装目录下的 *docs目录* 中找到sun-jaxws.xsd文件,将其中的部分配置复制出来即可。

先找到sun-jaxws.xsd文件:

再复制如下代码:

最后,手动在工程的/WEB-INF目录下创建sun-jaxws.xml配置文件并进行配置,如下:

5、配置web.xml

使用JAX-WS RI组件,需要配置一个监听器:WSServletContextListener
当客户端访问webservice服务的时候,该监听器就会监听到,并找到同样配置在web.xml中的WSServlet,交给它来找寻webservice服务。

6、部署到tomcat服务器并访问服务

将我们的项目添加到tomcat服务器中(跟其他项目一样的添加方式),并启动服务器。
打开浏览器,地址栏输入访问wsdl文件的路径:http://localhost:8080/JaxWS_ri_calculator_server/calculatorService?wsdl
  • wsdl路径简介:
  • localhost :使用tomcat服务器部署,只能在本地自己测试,所以是localhost,也可以是127.0.0.1
  • 8080 : 端口号
  • JaxWS_ri_calcalator_server :项目名
  • calculatorService : 配置文件配置的提供webservice服务的服务接口实现类
  • wsdl : 请求参数,表示访问该webservice服务的wsdl文件

出现如下页面,即表示部署成功:

二、客户端

创建一个普通的java项目:JaxWS_ri_calculator_client
先把客户端项目完成之后完整的结构示意图展示出来,方便你们参考:

1、获取服务端文件

你如果接触过最简单的webservice程序,你就会会知道,模拟一个客户端去调用服务端的服务,需要知道的参数有:
wsdl文件路径
提供webservice服务的服务接口源文件(.java)
服务接口实现类中@WebService注解上targetNamespace属性的值(wsdl文件中可以得知)
服务接口实现类中@WebService注解上serviceName属性的值(wsdl文件中可以得知)
因此,获取起来相对麻烦。而JDK1.6自带了wsimport.exe工具,就是专门为了方便客户端获取服务端文件以及调用webservice服务的。
该工具位于JDK安装目录的lib目录下。使用方法:
进入命令提示符界面
切换到JDK安装路径的lib目录下
输入wsimport, 回车,就可以看到该工具的参数,根据需要选择,通常是 -keep 表示保存文件  -s 保留源文件格式:wsimport -keep -s 保留源文件的路径  wsdl文件路径

命令提示符界面如下:

由图可知,我设置了将生成的.java源文件放在D:/haha/jax_ws_ri目录中,查看之后文件如下:

2、将生成的文件加入我们的工程

在工程中,按照生成的包路径创建包(为了防止包路径提示错误),然后将生成的文件加入到工程中,如下:

3、创建调用服务的客户端程序

创建一个client.java来模拟客户端,然后调用webservice服务

4、结果显示

JAX-WS RI组件开发基于JAX-WS规范的WebService服务入门程序相关推荐

  1. Windows8开发指南(16)开发基于Windows8的第一个metro界面C++程序

    微软公布了Windows8开发人员预览版, http://msdn.microsoft.com/en-us/windows/home?ocid=ban-f-cn-dca-Sep-Win8Build 大 ...

  2. springboot开发基于阿里云的短信服务、邮件推送服务

    短信服务以及邮件推送服务使用的都是阿里云的产品,短信服务是收费的,所以需要选择短信服务的套餐并预充值才能使用.邮件推送服务是有200条的免费额度. 一:短信服务 1.申请短信签名.短信模板 到阿里云的 ...

  3. 基于jws发布webservice服务

    基于jws发布webservice服务 用途 用于验证基于jws搭建的webservice服务端与客户端. WebService服务端 1.目录结构 D:. │ pom.xml # maven配置 │ ...

  4. 转载 WebService 的CXF框架 WS方式Spring开发

    WebService 的CXF框架 WS方式Spring开发 1.建项目,导包. 1 <project xmlns="http://maven.apache.org/POM/4.0.0 ...

  5. 基于Vue.js的后台管理系统组件开发

    什么是Vue Vue.js 是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合. ...

  6. c# 无法加载oraops.dll_Robotstudio软件二次开发:基于C#语言的Smart组件开发基础

    Robotstudio软件除了支持Add-Ins插件的二次开发以外,还支持Smart组件的二次开发.开发语言同样是基于.NET框架的C#语言或VB语言.Smart组件是Robotstudio软件中实现 ...

  7. Vue 3 组件开发:搭建基于SpreadJS的表格编辑系统(环境搭建)

    Vue是一套用于构建用户界面的渐进式框架,与其它大型 JS 框架不同,Vue 被设计为可以自底向上逐层应用,更易上手,还便于与第三方库或既有项目整合,因此,Vue完全能够为复杂的单页应用提供驱动. 2 ...

  8. vue结合饿了么_饿了么基于Vue2.0的通用组件开发之路(分享会记录)

    Element:一套通用组件库的开发之路 Element 是由饿了么UED设计.饿了么大前端开发的一套基于 Vue 2.0 的桌面端组件库.今天我们要分享的就是开发 Element 的一些心得. 官网 ...

  9. 基于GBT28181:SIP协议组件开发-----------第三篇SIP注册流程分析实现

    原创文章,引用请保证原文完整性,尊重作者劳动,原文地址http://www.cnblogs.com/qq1269122125/p/3941172.html,qq:1269122125. 上两章节简要的 ...

最新文章

  1. mui 打开openWindow新页面不读取缓存的设置/mui中h5清除缓存页面的办法
  2. 唯有自己变得强大_物竞天择,适者生存,唯有强大自己,方能百毒不侵
  3. 犹太人从未透露的12个秘密(图)
  4. 增大表名最大长度_风电叶片材料的发展变迁史,及风力发电机叶片长度发展历程...
  5. 机器学习实战(二)决策树DT(Decision Tree、ID3算法)
  6. 第 1 章 Readme
  7. 新时代、新挑战、新机遇
  8. linux 挂在windows共享文件夹
  9. Python--网络编程-----基于UDP协议的套接字不会发生粘包
  10. pandasSeries模块
  11. JXSL报错CannotOpenWorkbookException和Cannot load XLS transformer解决方案
  12. android多开器工作原理,[原创]app隐藏大师绕过密码与多开分析
  13. 在Ubuntu18.04上安装视频播放器smplayer
  14. 项目经理必看逻辑思维书单
  15. vue2.0 使用xlsx读取excel文件数据 操作流程 以及文件中特殊日期数据的处理
  16. 向左转移测试需要整个团队的努力
  17. js遍历对象(js遍历对象的所有属性)
  18. 浏览淘宝网页背后所发生的事情
  19. ZFS-128bit文件系统
  20. 数据库之逻辑设计阶段(候选码、主码、外码、范式…)

热门文章

  1. linux如何授权HADOOP,hadoop用户权限管理
  2. String数组拆分
  3. 51单片机下载完程序后不亮_为什么要学习单片机?如何开始上手学习单片机?...
  4. 为什么注销计算机用户登录,为什么我的电脑开不了机?一点用户登陆就显示正在注销了....
  5. 彩光价格一般是多少_彩光祛斑价格一般是多少呢?
  6. “春节回家带点啥?”一个愁人的选择题
  7. 云南昆明主城区一在建工地围墙倒塌致2人死亡
  8. 如何使用hbuilder快速生成一个直接打开网站的app
  9. 修改Centos7/RHEL7的主机名
  10. 神思二代身份证读卡器Demo的C++版本