java代码调用webservice接口

1.下面直接上代码,一个工具类,调用webservice接口

package client;
/**
 * @author yangeES
 */
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

public class AxisUtils {

    public static String callService(String serviceUrl,String methodName,Object [] args)  {     
        // 创建一个服务(service)调用(call)
        String ret="";
        try {
            Service service = new Service();
            // 通过service创建call对象    
            Call call = (Call) service.createCall();
            // 设置service所在URL   
            call.setTargetEndpointAddress(
            new java.net.URL(serviceUrl));

            call.setOperationName(methodName);//设置访问的方法名
            ret = (String) call.invoke(args);// Object 数组封装了传递的参数
        } catch (Exception e) {
            e.printStackTrace();
        }
        return ret;
    }

    public static String startWebService(String cs) {
        String res = "";
        try {
    res=callService("http://127.0.0.1:8080/axis/servers/hello?wsdl","dockInfoInsert",new Object[]{cs}); 
        } catch (Exception e) {
            e.printStackTrace();
        }
        return res;
    }
}
a.这个里面的访问地址,方法名,对应的是我上篇博客的webservice参数,我简单介绍下,前面是webservice接口所部署的服务器网络Ip,servers路径,hello服务名,dockinfoInsert你要调用的接口的方法名,new Object[]{cs}放你传递的参数。

b.这个一般是接口的提供方会给出接口介绍文档,然后你根据文档就可以找到对应的路径,方法名。

2.这个工具类写好后,只要调用工具类中的startWebService()就可以了,具体传递参数的设置就看实际要求了。

你可能感兴趣的:(web)