Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用带有标头的WSDL ksoap_Java_Android_Soap_Wsdl - Fatal编程技术网

Java 使用带有标头的WSDL ksoap

Java 使用带有标头的WSDL ksoap,java,android,soap,wsdl,Java,Android,Soap,Wsdl,从androidstudio quiro使用WSDL,它有用于身份验证的头。 我传递xml文件和代码,以防您告诉我错误在哪里 问题是它抛出了一个异常 我认为问题是头球传中。如何使用ksoap2传递头 这是我想要使用的WSDL,下面是android studio的代码 XML <wsdl:definitions targetNamespace="urn:HPD_IncidentInterface_WS"> − <wsdl:types> − <xsd:schema el

从androidstudio quiro使用WSDL,它有用于身份验证的头。 我传递xml文件和代码,以防您告诉我错误在哪里

问题是它抛出了一个异常

我认为问题是头球传中。如何使用ksoap2传递头

这是我想要使用的WSDL,下面是android studio的代码

XML

<wsdl:definitions targetNamespace="urn:HPD_IncidentInterface_WS">
−
<wsdl:types>
−
<xsd:schema elementFormDefault="qualified" targetNamespace="urn:HPD_IncidentInterface_WS">
<xsd:import namespace="http://tempuri.org"/>
<xsd:element name="HelpDesk_Query_Service" type="s0:GetInputMap"/>
−
<xsd:complexType name="GetInputMap">
−
<xsd:sequence>
<xsd:element name="Incident_Number" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="HelpDesk_Query_ServiceResponse" type="s0:GetOutputMap"/>
−
<xsd:complexType name="GetOutputMap">
−
public class WebService {

    protected String doInBackground(Void... params) {

//WebService - Opciones


        final String NAMESPACE = "urn:HPD_IncidentInterface_WS";
        //final String URL = "http://10.240.240.80:8080/arsys/services/ARService?server=desitsm01&webService=HPD_IncidentInterface_WS";
        final String URL = "http://10.240.240.80:8080/arsys/WSDL/public/desitsm01/HPD_IncidentInterface_WS";
        final String METHOD_NAME = "HelpDesk_Query_Service";
        final String SOAP_ACTION = "urn:HPD_IncidentInterface_WS/HelpDesk_Query_Service";
        //final String SOAP_ACTION = "Helpdesk_Query_Service";


        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
       // HeaderProperty hp = new HeaderProperty();

        //preparamos el cuerpo para la consulta
        //request.addProperty("userName", "csu_cau2");
        //request.addProperty("password", "csu_cau2");
        request.addProperty("Incident_Number", "INC000000068829");

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

        //creamos la cabecera
        Element[] header = new Element[1];
        header [0] = new Element().createElement(NAMESPACE, "AuthenticationInfo");
        //header[0].setAttribute(null, "mustUnderstand","1");

        Element username = new Element().createElement(NAMESPACE, "userName");
        username.addChild(Node.TEXT, "csu_cau2");
        header[0].addChild(Node.ELEMENT,username);

        Element pass = new Element().createElement(NAMESPACE,"password");
        //pass.setAttribute(null, "Type", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText");
        pass.addChild(Node.TEXT, "csu_cau2");

        header[0].addChild(Node.ELEMENT, pass);

        // add header to envelope
        envelope.headerOut = header;
        Log.i("header", "" + envelope.headerOut.toString());

        envelope.dotNet = true;

        envelope.bodyOut=request;

        HttpTransportSE androidHttpTransport =  new HttpTransportSE(URL);
        String res="";

        try{
            androidHttpTransport.call(SOAP_ACTION, envelope);
            //SoapObject response = (SoapObject)envelope.bodyIn;
            res=envelope.getResponse().toString();

        }catch(Exception e){Log.d("Prova",e.toString());     res="error"; return res;}
        res="error";
        Log.d("Prova", res);
        return res;
    }