【问题标题】:org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelopeorg.xmlpull.v1.XmlPullParserException:预期:START_TAG {http://schemas.xmlsoap.org/soap/envelope/}信封
【发布时间】:2015-07-02 06:36:25
【问题描述】:

我正在尝试在我的应用程序中使用soap api进行登录,但出现上述错误,谁能告诉我哪里出错了,这是我第一次使用soap api。 这是我打肥皂的代码:-

Vector<Object> args = new Vector<Object>();
			Hashtable<String, Object> hashtable = new Hashtable<String, Object>();
			hashtable.put("Email", "mss.siddhart28@gmail.com");
			hashtable.put("Password", "siddharth");
			args.add(hashtable);
			SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
					SoapEnvelope.VER11);
			envelope.dotNet = true;
			envelope.xsd = SoapSerializationEnvelope.XSD;
			envelope.enc = SoapSerializationEnvelope.ENC;
			(new MarshalHashtable()).register(envelope);
			HttpTransportSE androidHttpTransport = new HttpTransportSE(
					"http://tempuri.org/", 15000);
			androidHttpTransport.debug = true;
			String result = "";
			try {

				SoapObject request = new SoapObject("http://tempuri.org", "call");
				request.addProperty("resourcePath", "User_Login");
				 request.addProperty("args", args);

				envelope.setOutputSoapObject(request);
				androidHttpTransport.call("call", envelope);
				envelope.setOutputSoapObject(request);
				result = envelope.getResponse().toString();
				Toast.makeText(MainActivity.this, "envelope is" + envelope, Toast.LENGTH_LONG).show();
				System.out.println("result signup: " + result);
			} catch (EOFException e) {
				e.printStackTrace();
				return "restart";
			}

这是我的 wsdl :-

POST /w4w/w4wservice.asmx HTTP/1.1
Host: 64.31.2.58
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/User_Login"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <User_Login xmlns="http://tempuri.org/">
      <Email>string</Email>
      <Password>string</Password>
    </User_Login>
  </soap:Body>
</soap:Envelope>

任何帮助将不胜感激。

谢谢

【问题讨论】:

    标签: android web-services soap wsdl


    【解决方案1】:

    最后我解决了我的问题..我在这里发布代码,以便其他人可以获得帮助。

    private   String SOAP_ACTION = "http://tempuri.org/User_Login";
    	private   String METHOD_NAME = "User_Login";
    	private   String NAMESPACE = "http://tempuri.org/";
    	private   String URL = "http://64.31.2.58:8080/w4w/w4wservice.asmx";

    public String logIn() {
    			
    			SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
    					SoapEnvelope.VER11);
    			envelope.dotNet = true;
    			envelope.xsd = SoapSerializationEnvelope.XSD;
    			envelope.enc = SoapSerializationEnvelope.ENC;
    			(new MarshalHashtable()).register(envelope);
    			HttpTransportSE androidHttpTransport = new HttpTransportSE(
    					URL, 15000);
    			androidHttpTransport.debug = true;
    			String result = "";
    			try {
    
    				SoapObject request = new SoapObject(NAMESPACE,
    						METHOD_NAME);
    				request.addProperty("Email", Email);
    				request.addProperty("Password", Password);
    
    				envelope.setOutputSoapObject(request);
    				androidHttpTransport.call(SOAP_ACTION, envelope);
    				result = envelope.getResponse().toString();
    				
    				System.out.println("result signup: " + result);
    			} catch (EOFException e) {
    				e.printStackTrace();
    				return "restart";
    			} catch (SoapFault e) {
    				e.printStackTrace();
    				if (e.getMessage()
    						.contains("Session expired. Try to re-login.")) {
    					return "restart";
    				}
    				return "Email Already Exists";
    			} catch (NullPointerException e) {
    				e.printStackTrace();
    				return "restart";
    			} catch (Exception e) {
    				e.printStackTrace();
    				return "";
    			}
    			System.out.println("registration result :" + result);
    			return result;
    
    		}

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-18
      • 1970-01-01
      • 1970-01-01
      • 2012-09-07
      相关资源
      最近更新 更多