soap 设置header 添加头元素 webservice wsdl

2021-05-06 10:21:48 浏览数 (1)

代码语言:javascript复制
 

import java.net.URL;

 

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;

 

import org.apache.axis.message.SOAPHeaderElement;

import javax.xml.soap.SOAPElement;

 

public class SendSMSZOP implements Runnable {

    public String phones = null;//adfbcc

    public String msg = null;//”测试”;

 

    public int T_count=0;

    public int tname=0;

 

    public void run() {

//        System.out.println(“[TN:” tname ”] “ T_count);

        long s=System.currentTimeMillis();

        String r = send2ZOP(phones,msg);

        long e = System.currentTimeMillis();

        String time =(e-s)/1000==0?(e-s) ”毫秒”:(e-s)/1000 ”秒” (e-s)00 ”毫秒”;

        System.out.println(“[TN:”  tname ”] P:” phones ” ST->” time ”,R->” r );

//        System.out.println(“ST->” time ”,R->” r );

    }

 

    private String send2ZOP(String phones, String msg) {

        String ret=null;

        try { 

 

            String Username = “dkfj”;

            String Password = “123456”;

            String nameSpace = “http://tempuri.org/”;

            String endPoint = “http://1.6.5.1/friend_ws/Ses.asmx”;

 

            Service service = new Service();

            Call call = null;

            call = (Call) service.createCall();

            call.setTargetEndpointAddress(new URL(endPoint));

 

            call.setOperationName(new QName(nameSpace, “SendMsg”));

            call.addParameter(new QName(nameSpace, “RNos”), XMLType.XSD_STRING,

                    ParameterMode.IN);

            call.addParameter(new QName(nameSpace, “Msg”), XMLType.XSD_STRING,

                    ParameterMode.IN);

            call.setReturnType(XMLType.XSD_STRING);

 

            call.setUseSOAPAction(true);

            call.setSOAPActionURI(“http://tempuri.org/SendMsg”);

 

            SOAPHeaderElement element = new SOAPHeaderElement(new QName(

                    nameSpace, “ValidHeader”));

            SOAPElement se = element.addChildElement(“Username”);

            se.addTextNode(Username);

            se = element.addChildElement(“Password”);

            se.addTextNode(Password);

            call.addHeader(element);

 

            ret = (String) call.invoke(new Object[] { phones, msg });

//            System.out.println(ret);

        } catch (Exception e) {

            e.printStackTrace();

        }

        return ret;

 

    }

 

}

 

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100558.html原文链接:

0 人点赞