JAVA调用webservice方法(axis)

项目需求上需要调用另一个合作伙伴的webservice接口,之前用的是sax的调用方式,开始摸索这个,感觉这个也挺简单的,现在把自己的实现过程分享给大家,写的不好的地方,望大家勿喷。

详细代码如下:

package com.ancs.oa;

import java.util.Date;

import javax.xml.namespace.QName;

import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
/**
 * 
 * @ClassName:MessageService
 * @Description:调用webservice传入5个参数
 * @author luckyboyguo@126.com
 * @date:2014年12月25日下午5:16:21
 */
public class MessageService {
	public static Object ToOaMessage(String a,String b,String c,String d) throws AxisFault{
		 // 使用RPC方式调用WebService  
		RPCServiceClient  client=new RPCServiceClient();
		Options option=client.getOptions();
		 // 指定调用WebService的URL   
		EndpointReference targetEPR =new EndpointReference("你的webservice地址");
		option.setTo(targetEPR);
		 // 指定要调用的plus方法及WSDL文件的命名空间  
		//http://test
		QName opAddEntry =new QName("http://webService.oa.ancs.com","docMessageInsert");
		  // 指定plus方法的参数值  
		 Object[] opAddEntryArgs = new Object[] {a,b,c,d,new Date() };  
		// 指定plus方法返回值的数据类型的Class对象    
		 Class[] classes = new Class[] { String.class }; 
		 // 调用plus方法并输出该方法的返回值  
		 try {
			return client.invokeBlocking(opAddEntry,opAddEntryArgs, classes)[0];
		} catch (AxisFault e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;

	}
	
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值