webService接口搭建

1. 开发背景: 博主没有正规系统的学习过webservice也不了解大型互联网公司webservice是如何使用的. 而本文是作者自己在自己所在单位看项目和从网上学习资料亲自搭建并且实际访问通过测试.

本文是基于axis2搭建的webservice服务接口. (javaweb项目,只用和Struts2框架),最后有代码下载链接可以参考

(1)首先需要了解什么是axis2?

Axis2是WebService的框架。是Axis1.x的替代品简单的理解:axis2实现了WebService。然后你可以在tomcat或者是Jetty上部署用Axis2实现的WebService程序。

配置过程如下:

2. eclipse创建一个javaweb项目,本文只做简单演示,所以只用Struts2框架即可,下载Struts2所需jar包,如图:


3. 到官网, 下载axis2所需jar包,添加到项目lib目录下, 官网地址:http://axis.apache.org/axis2/java/core/download.cgi

3.1 下载最新版本即可,下载文件lib目录下为全部的jar,但根据项目实际只需要部分即可


3.2 所需jar包目录如下所示:


4. 将上述jar包添加到项目中,在web.xml中添加webservice配置, 如图所示:

	
   
   
	
   
   
		
    
    
     
     AxisServlet
    
    
		
    
    
     
     Apache-Axis Servlet
    
    
		
    
    
     
     org.apache.axis.transport.http.AxisServlet
    
    
	
   
   

	
   
   
		
    
    
     
     AdminServlet
    
    
		
    
    
     
     Axis Admin Servlet
    
    
		
    
    
     
     
			org.apache.axis.transport.http.AdminServlet
		
    
    
	
   
   

	
   
   
		
    
    
     
     SOAPMonitorService
    
    
		
    
    
     
     SOAPMonitorService
    
    
		
    
    
     
     
			org.apache.axis.monitor.SOAPMonitorService
		
    
    
		
    
    
			
     
     
      
      SOAPMonitorPort
     
     
			
     
     
      
      5001
     
     
		
    
    
		
    
    
     
     100
    
    
	
   
   

	
   
   
		
    
    
     
     AxisServlet
    
    
		
    
    
     
     /servlet/AxisServlet
    
    
	
   
   

	
   
   
		
    
    
     
     AxisServlet
    
    
		
    
    
     
     *.jws
    
    
	
   
   

	
   
   
		
    
    
     
     AxisServlet
    
    
		
    
    
     
     /services/*
    
    
	
   
   

	
   
   
		
    
    
     
     SOAPMonitorService
    
    
		
    
    
     
     /SOAPMonitor
    
    
	
   
   
	
   
   

5. 新建webservice服务端接口以及客户端测试类

5.1 服务接口


5.2 客户端测试类



6 在目录为\WebRoot\WEB-INF\下,    新建文件命名server-config.wsdd, 发布服务名入股所示:


7. 测试  启动tomcat 打开浏览器 输入 http://localhost:8080/webservice/services/ServiceImpl?wsdl

    注意: 浏览器最后面的ServiceImpl 就是 server-config.wsdd文件中发布的服务名,两者必须一致

    如果出现如下图所示的xml格式的内容,说明webservice服务发表成功



8. 最后 在客户端测试类中进行测试

8.1客户端控制台(Run As ---> Java Application):

package com.webservice.client;

import javax.xml.namespace.QName;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

/**
 * webservice客户端测试代码
 * @author zhaojp
 * @date 2017-8-28
 */
public class TestClient {

	public static void main(String[] args) {
		Service service = new Service();
		try{
			Call call = (Call)service.createCall();
			//设置地址
			call.setTargetEndpointAddress(
					new java.net.URL("http://localhost:8080/webservice/services/ServiceImpl?wsdl"));
			//设置要执行的方法
			call.setOperationName(
					new QName("http://com.webservice.impl.WebSercviceImpl","helloService"));
			//设置参数
			call.addParameter("str",org.apache.axis.Constants.XSD_STRING , 
					javax.xml.rpc.ParameterMode.IN);
			//设置返回类型
			call.setReturnType(org.apache.axis.Constants.XSD_STRING);
			String str = "欢迎来到webservice的世界";
			//执行webService
			Object result = call.invoke(new Object[]{str});
			System.out.println("返回的结果是:" + result.toString());
		}catch(Exception e){
			e.printStackTrace();
		}
	}
	
}

8.2服务端控制台:


OK 测试通过


9.  代码下载链接:     http://download.csdn.net/download/qiaoshunho/9953785


WebService接口的书是指介绍和讲解WebService接口相关技术原理、实践应用和开发实例的书籍。WebService是一种基于互联网的通信协议,通过该协议可以实现不同平台之间的数据交换和通信。它使用了标准的XML格式进行数据传输,并且支持使用HTTP、SMTP、FTP等常用的协议进行通信。 这本书可能会从不同的角度去介绍WebService接口的相关知识和技术。它可能会讲解WebService接口的基本原理,包括SOAP(Simple Object Access Protocol)和WSDL(Web Services Description Language)的概念和使用方法。SOAP是WebService接口中的通信协议,它规定了数据的封装和传输方式,而WSDL则是用于描述WebService接口的语言,它定义了接口的输入参数、输出结果以及调用方式等信息。 此外,这本书也可能会涉及WebService接口的开发实践,包括如何使用不同的开发工具和编程语言(如Java、C#等)来创建WebService接口,以及如何使用各种开发框架和库来简化接口的开发和维护过程。 除了基本的原理和实践,这本书可能还会介绍WebService接口在各种场景下的应用,例如在企业应用中如何使用WebService接口实现系统间的数据交换和集成,如何利用WebService接口提供服务化的业务功能,以及如何使用WebService接口搭建跨平台的分布式系统等。 综上所述,WebService接口的书是帮助读者深入了解和掌握WebService接口相关技术和应用的一本专业书籍,它可以帮助读者在实际项目中灵活运用WebService接口,提高系统的互操作性和扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值