webservice代码编写主要包括服务器端发布和客户端调用。
一、java工程发布,java工程调用
(一)、服务器端的编写
1、在eclipse里新建java project工程,创建功能类,通过关键字@webservice(name="newInstance"),默认为类名

2、然后再创建一个代main函数的类(完成发布)

这样服务器端代码就完成了!
3、下面就开始发布吧,在eclipse里运行application程序(含有main函数的程序)。
然后打开浏览器,输入:http://172.16.11.93:8080/GoodInfo?wsdl

出现xml文档则发布成功。
(二)、客户端调用
Ⅰ、手动生成jar包调用服务器代码
(1)、在dos下键入命令:wsimport http://172.16.11.93:8080/GoodInfo?wsdl

(2)然后再利用jar cvf express_client.jar(自己的包名) com/ifly/ws/*

(3)两个命令得到的东西

(4)现在在eclipse新建一个java project工程,新建一个包含main函数的类,导入express_client.jar到该工程下

(5)然后运行application程序,控制台输出:info:Hello World
Ⅱ、不用在dos下利用命令生成jar包,直接利用eclipse自动生成
(1)方法如下:首先新建java project,然后在该工程上,单击鼠标右键,选择new -->web services -->web service client,然后确定。
在该工程下会自动生成一系列java文件和jar包

(2)同样新建一个类进行调用:

(3)运行application程序,控制台输出:info:Hello World
二、maven发布,java工程调用
(一)maven发布
(1)、首先在pop文件中引用依赖包

(2)、在maven工程下 新建个ws包,把GoodInfo类(即你编写的要发布出去的功能类)放进去;
以下是GoodInfo类

(3)然后运行该maven项目
(4)在浏览器中输入 http://172.16.11.93:8888/schedule/services/GoodInfo?wsdl
(5)浏览器中显示如下xml文件则发布成功

(二)java调用
Ⅰ、手动生成jar包调用服务器代码
(1)、和java工程调用方法一样,用wsimport 和jar命令或者用eclipse自动生成调用

(2)、运行application程序
结果:info:Hello World
Ⅱ、不在dos下利用命令生成jar包,而是直接利用eclipse自动生成
(1)、生成方法同第一种(java工程发布,java工程调用)里的eclipse自动生成
(2)、把生成的java文件全部删除

(3)、然后创建一个类(包含main函数)进行调用
a、创建Service实例
b、通过Service实例创建Call实例
c、将Web Service的服务路径加入到call实例之中
d、调用Web Service的方法
e、调用Web Service,传入参数
f、设置返回值类型
g、调用invoke()

(4)、运行application程序
结果:
application控制台:信息:Hello World
maven控制台:orderNo:1
三、利用cxf框架发布web service
(一)、服务器端编写
(1)、新建java web项目
(2)、配置web.xml文件

(3)、在WEB-INF/下创建beans.xml文件

(4)、导入apache-cxf-2.2.1压缩包下lib文件夹下所有的jar包(不是全部需要,节省时间全部导入)


(5)、把功能实现类拷贝懂啊src包中

a、GoodInfo接口

b、接口实现类

(6)、运行tomcat
(7)、浏览器中输入:http://localhost:8080/CXFDemo/webservice/GoodInfo?wsdl
(8)、出现xml页面发布成功

(二)客户端编写
(1)、创建java project工程
(2)、导入apache-cxf-2.2.1压缩包下lib文件夹下所有的jar包
(3)、拷贝GoodInfo 接口到src下
(4)、创建测试类(包含main函数)

(5)、配置beans_client.xml文件

(6)、运行结果
info:Hello World
webservice代码编写主要包括服务器端发布和客户端调用。的更多相关文章
- WebService—CXF—实现接口发布和客户端调用
(一)接口发布的几种方式 定义接口: @WebService(targetNamespace="http://www.itfad.net/queryUser") public in ...
- 【知识积累】服务器端获取客户端的IP地址(当客户端调用由Axis开发的WebService)
一.前言 由于项目中一个小的模块需要获取客户端的IP地址以保证安全调用webservice接口,项目中客户端使用C#编写,服务器端使用Java编写,服务器端与客户端采用Axis开发的WebServic ...
- WebService的发布及客户端的调用
一.目录 1.JAX-WS发布WebService 1.1 创建一个简单的WS 1.2 打包部署和发布 2.CXF+Spring发布WebService 3.客户端的调用方式 二.正文 1. JAX- ...
- Spring集成CXF发布WebService并在客户端调用
Spring集成CXF发布WebService 1.导入jar包 因为官方下载的包里面有其他版本的sprring包,全导入会产生版本冲突,所以去掉spring的部分,然后在项目根目录下新建了一个CXF ...
- webservice发布服务:AXIS2及客户端调用
1.Axis2: 到官网下载axis2的压缩包. 解压后: 1.将lib文件下的jar包复制到项目中 2.在web-inf下创建services->META-INF->services.x ...
- webservice发布服务:CXF及客户端调用
2.CXF:(与spring整合) CXF相对来说操作没有AXIS繁琐 1.导入spring的jar包和cxf的jar包 2.在spring的核心配置文件中配置发布的接口类 <?xml vers ...
- CXF发布webService服务以及客户端调用
这篇随笔内容是CXF发布webService服务以及客户端调用的方法 CXF是什么? 开发工作之前需要下载CXF和安装 下载地址:http://cxf.apache.org 安装过程: <1&g ...
- 用JDK自带的工具生成客户端调用Webservice的代码
JAVA下客户端调用Webservice代码简直是让人心生畏惧,今日尝试,做记录如下,参考网上的众多解决方案,下面这种方式是比较简单的. 在jdk的bin目录下有一个wsimport.exe的工具,使 ...
- axis1客户端调用webservice的通用代码
1.axis1 作为web service 客户端时,调用web service 服务端的通用代码 String url = "http://www.webxml.com.cn/webser ...
随机推荐
- git 的用法和命令
学无止境,精益求精! 十年河东,十年河西,莫欺少年穷! 学历代表你的过去,能力代表你的现在,学习代表你的将来! 很久没写博客了,都是工作太忙闹的,索性今儿转发一篇!省的博客园太冷清了... Git图形 ...
- qq快捷打开聊天窗口的代码
pc代码: http://wpa.qq.com/msgrd?v=3&uin=8423291&site=qq&menu=yes
- Python中GUI库PyQt5的安装和配置
在使用Tkinter开发GUI程序时,发现相关文档比较少,开发起来太累.经过综合比较,决定使用PyQt这个库.下面是简单的安装步骤. 1.安装 PyQt5 : pip install PyQt5 -i ...
- SSO系统介绍
1.什么是sso系统 SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他应用中用于 ...
- 5、SVN 权限管理
5.SVN 权限管理 5.1版本库中三个对应的配置文件 版本库配置文件目录 /var/svn/repository/pro_oa/conf svnserve.conf 文件,如下修改: 19# ano ...
- SQLplus命令中删除键和翻页键不能用的问题
问题现象: 在进入连接数据库后,如何写错命令,删除键不好使,总是出现^H^H [oracle@master2 ~]$ sqlplus / as sysdba SQL*Plus: Release 12. ...
- MySQL数据库 、数据表、数据的增删改查简版
数据库操作 # 增 CREATE(DATABASE | SCHEMA)[IF NOT EXISTS] db_name [[DEFAULT] CHARACTER SET[=]charset_name] ...
- Webpack编译提示内存溢出解决方案
在项目开发中,随着业务需求的复杂项目随之增大,再加上同一个文件被引用次数过于频繁在开发编译或者上线打包时经常会出现如下错误: 这个报错的意思就是Node内存不足所导致的,我们都知道 Node 是基于V ...
- ora-01847:月份中日的值必须介于 1 和当月最后一日之间
今天解决了一个奇葩问题: ORA-01847: 月份中日的值必须介于 1 和当月最后一日之间 将数据从一个视图倒入到一个同结构的表中,但是老报错,也就那么几个字段,肉眼真看不出来什么问题,但是既然报这 ...
- jsfuck-原理
jsfuck真的fuck,第一眼就是WTF?? Example The following source will do an alert(1): [][(![]+[])[+[]]+([![]]+[] ...