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


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值