服务端使用Axis2-1.6.3发布webservice服务、客户端使用Axis1.4实现调用

本文档详细介绍了如何使用Axis2-1.6.3在服务端发布WebService服务,并通过Axis1.4客户端进行调用。首先,介绍了准备工作,包括下载Axis2和Axis1.4的相关组件。接着,展示了在MyEclipse环境中创建Web项目,定义接口、请求响应对象和服务实现。然后,配置services.xml和web.xml文件以发布服务。服务发布成功后,可以通过特定URL查看WSDL。最后,说明了如何使用wsdl2java生成客户端代码,并在新的Java项目中进行测试和调用,注意需要添加额外的jar包以解决依赖问题。
摘要由CSDN通过智能技术生成

一、准备工作

下载Axis2-1.6.3-war.zip 下载链接

下载Axis1.4相关jar包 下载链接

二、开发Webservice服务端代码

使用环境:myeclipse6.6+tomcat6.0+jdk1.6

1.新建一个web项目MyWebservice



 定义接口UserService

package com.sjz.service;

import com.sjz.demo.DataRequest;
import com.sjz.demo.DataResponse;
/**
 * 要发布的服务UserService接口
 * @author Administrator
 *
 */
public interface UserService {
	public DataResponse queryUser(DataRequest request);
	
	public DataResponse updateUser(DataRequest request);
}

 定义请求和响应对象DataRequest、DataResponse和用户实例UserInfo  

package com.sjz.demo;

public class DataRequest {
	private RequestHeader header;
	
	/**
	 * Axis2中使用List、Set等集合尝试了几次,发现生成的客户端中均以Object代替,不能很好的解析,所以使用数组形式存放集合数据
	 */
	private UserInfo[] userInfos;

	public UserInfo[] getUserInfos() {
		return userInfos;
	}

	public void setUserInfos(UserInfo[] userInfos) {
		this.userInfos = userInfos;
	}

	public RequestHeader getHeader() {
		return header;
	}

	public void setHeader(RequestHeader header) {
		this.header = header;
	}
	
	
}

package com.sjz.demo;

public class DataResponse {
	/**
	 * Axis2中使用List、Set等集合尝试了几次,发现生成的客户端中均以Object代替,不能很好的解析,所以使用数组形式存放集合数据
	 */
	private UserInfo[] userInfos;
	
	/**
	 * 响应编码
	 */
	private String returnCode;
	
	/**
	 * 响应结果内容
	 */
	private String returnMessage;

	public UserInfo[] getUserInfos() {
		return userInfos;
	}

	public void setUserInfos(UserInfo[] userInfos) {
		this.userInfos = userInfos;
	}

	public String getReturnCode() {
		return returnCode;
	}

	public void setReturnCode(String returnCode) {
		this.returnCode = returnCode;
	}

	public String getReturnMessage() {
		return returnMessage;
	}

	public void setReturnMessage(String returnMessage) {
		this.returnMessage = returnMessage;
	}
	
	
}

package com.sjz.demo;

public class UserInfo {
	private String userName;
	private String password;
	
	
	public UserInfo() {
		super();
		// TODO Auto-generated constructor stub
	}
	public UserInfo(String userName, String password) {
		super();
		this.userName = userName;
		this.password = password;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	
	
}

package com.sjz.demo;

public class RequestHeader {
	private String operator;
	private String pwd;
	public String getOperator() {
		return operator;
	}
	public void setOperator(String operator) {
		this.operator = operator;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	
	
}


 定义UserService接口的实现类UserServiceImpl

package com.sjz.service.impl;
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值