java 调用webservice接口(asmx)


进入.asmx的链接,找到方法名、命名空间等

import javax.xml.namespace.QName;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.message.SOAPHeaderElement;

/**
 * Created by liwj on 2017/6/15.
 */
public class AsmxTest {private static String urlhsb="";
    private static String namespaceURI="";

    public static void main(String[] args){
        String xsXml="";
        Service service=new Service();
        try {
            Call call=(Call)service.createCall();
            call.setTargetEndpointAddress(urlhsb);
            //设置要调用哪个方法
            call.setOperationName(new QName(namespaceURI,"GetCbzm"));
            call.addParameter(new QName(namespaceURI,"xml"),
                    org.apache.axis.encoding.XMLType.XSD_STRING,
                    javax.xml.rpc.ParameterMode.IN);
            call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
            call.setUseSOAPAction(true);
            call.setSOAPActionURI(namespaceURI);

            //设置soapHeader
            SOAPHeaderElement soapHeaderElement = new SOAPHeaderElement(namespaceURI, "ValidationSoapHeader");
            soapHeaderElement.setNamespaceURI(namespaceURI);
            try {
                soapHeaderElement.addChildElement("UserName").setValue("");
                soapHeaderElement.addChildElement("PassWord").setValue("");
                call.addHeader(soapHeaderElement);
            }catch (Exception e){

            }

            String res=String.valueOf(call.invoke(new Object[]{xsXml}));

            System.out.println(res);


        }catch (Exception e){
            System.out.println(e.getMessage());
        }
    }
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM