一、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代码编写主要包括服务器端发布和客户端调用。的更多相关文章

  1. WebService—CXF—实现接口发布和客户端调用

    (一)接口发布的几种方式 定义接口: @WebService(targetNamespace="http://www.itfad.net/queryUser") public in ...

  2. 【知识积累】服务器端获取客户端的IP地址(当客户端调用由Axis开发的WebService)

    一.前言 由于项目中一个小的模块需要获取客户端的IP地址以保证安全调用webservice接口,项目中客户端使用C#编写,服务器端使用Java编写,服务器端与客户端采用Axis开发的WebServic ...

  3. WebService的发布及客户端的调用

    一.目录 1.JAX-WS发布WebService 1.1 创建一个简单的WS 1.2 打包部署和发布 2.CXF+Spring发布WebService 3.客户端的调用方式 二.正文 1. JAX- ...

  4. Spring集成CXF发布WebService并在客户端调用

    Spring集成CXF发布WebService 1.导入jar包 因为官方下载的包里面有其他版本的sprring包,全导入会产生版本冲突,所以去掉spring的部分,然后在项目根目录下新建了一个CXF ...

  5. webservice发布服务:AXIS2及客户端调用

    1.Axis2: 到官网下载axis2的压缩包. 解压后: 1.将lib文件下的jar包复制到项目中 2.在web-inf下创建services->META-INF->services.x ...

  6. webservice发布服务:CXF及客户端调用

    2.CXF:(与spring整合) CXF相对来说操作没有AXIS繁琐 1.导入spring的jar包和cxf的jar包 2.在spring的核心配置文件中配置发布的接口类 <?xml vers ...

  7. CXF发布webService服务以及客户端调用

    这篇随笔内容是CXF发布webService服务以及客户端调用的方法 CXF是什么? 开发工作之前需要下载CXF和安装 下载地址:http://cxf.apache.org 安装过程: <1&g ...

  8. 用JDK自带的工具生成客户端调用Webservice的代码

    JAVA下客户端调用Webservice代码简直是让人心生畏惧,今日尝试,做记录如下,参考网上的众多解决方案,下面这种方式是比较简单的. 在jdk的bin目录下有一个wsimport.exe的工具,使 ...

  9. axis1客户端调用webservice的通用代码

    1.axis1 作为web service 客户端时,调用web service 服务端的通用代码 String url = "http://www.webxml.com.cn/webser ...

随机推荐

  1. win DLL 笔记

    DLL 头文件: #ifdef DLL_API #else #define DLL 导出类 class DLL_API point { public: void aaa() { } } 导出类中函数 ...

  2. HLSL中constant variables的packing规则

    HLSL中constant variables的packing规则 参考MSDN上的官方文档.一般而言,HLSL将数据打包为4字节对齐,此外,它不允许数据跨16字节(即4个float的vector)的 ...

  3. day1-css练习[新浪首页顶部栏]

    直接贴代码吧: html代码 <div class="border-01"> <div class="border-001"> < ...

  4. JavaWeb【Servlet】

    概念 Servlet是在服务器上运行的小程序.一个Servlet请求对应一个Java类(对应一个Wrapper容器),可以通过请求-响应模式访问这个驻留在内存中的小程序. Tomcat容器等级 上图表 ...

  5. 解决 /etc/init.d/php-fpm no such file or directory等相关问题

    vi /etc/init.d/php-fpm #! /bin/sh # Comments to support chkconfig on CentOS # chkconfig: 2345 65 37 ...

  6. deep_learning_Function_sklearn.preprocessing.LabelBinarizer()

    在多数的机器学习比赛中,给出的标签都是非数字化的,所以我们需要对其进行转换.代码如下: from sklearn import preprocessing feature = [[0,1], [1,1 ...

  7. mysql服务启动失败

    #!/bin/bash . /etc/rc.d/init.d/functions MPORT=`netstat -atnlp | grep 3306| wc -l` MPROC=`ps ax | gr ...

  8. Redis02——Redis单节点安装

    Redis单节点安装 一.Redis的数据类型 string hash list set zset 二.安装 2.1.下载 wget http://download.redis.io/releases ...

  9. css 模块化

    什么是css模块化思想?(what) 为了理解css模块化思想,我们首先了解下,什么是模块化,在百度百科上的解释是,在系统的结构中,模块是可组合.分解和更换的单元.模块化是一种处理复杂系统分解成为更好 ...

  10. 清除input输入框的历史记录

    当之前的input框输入了数据后,下次输入有历史记录问题的解决方法 <input id="vhcl_no"  type="text"  autocompl ...