Axis调用WebService

import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;

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

public class WebServiceTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		try {         
            String endpoint ="http://127.0.0.1:8080/test.jws?wsdl";
            String namespace = "http://127.0.0.1:8080/test.jws";
           Service service = new Service(); 
           Call call = (Call) service.createCall();
           call.setTargetEndpointAddress(new java.net.URL(endpoint)); 
           call.setOperationName(new QName(namespace,"hello"));//要访问的方法
           call.addParameter(new QName(namespace, "str"),//对应的参数
    XMLType.XSD_STRING, ParameterMode.IN);
           call.addParameter(new QName(namespace, "flag"),//对应的参数
        		   XMLType.XSD_BOOLEAN, ParameterMode.IN);
           
           call.setReturnType(XMLType.XSD_STRING); //设置返回值类型


           Object[] params = new Object[2];
           params[0] = "hh4";
           params[1] = true;// new Double(123) 会出错
           String i=(String)call.invoke(params);
           System.out.println(i);

       } catch (Exception ex) {         
           ex.printStackTrace();

       }


	}

}

你可能感兴趣的:(apache,.net,xml,webservice)