2013-01-14 39 views
7

को कहां देखना है मुझे अपने सोपआरक्वेट के साथ जेनरेट एक्सएमएल देखने की कोशिश करने में कठिनाई हो रही है। यह मेरा कोड है:जेनरेट किए गए एक्सएमएल (केएसओएपी 2)

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 
     SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 

     PropertyInfo propInfo=new PropertyInfo(); 
     propInfo.setName("arg0"); 
     propInfo.setType(PropertyInfo.STRING_CLASS); 
     propInfo.setValue(sessionId); 

     request.addProperty(propInfo); 

     // Sending the array representing our board: 

     Fields fieldsVector = new Fields(); 

     for (int i=0; i<65; i++) { 

      fieldsVector.add(move[i].toString()); 

     } 

     PropertyInfo fieldsPropertyInfo = new PropertyInfo(); 
     fieldsPropertyInfo.setName("fields"); 
     fieldsPropertyInfo.setValue(fieldsVector); 
     fieldsPropertyInfo.setType(fieldsVector.getClass()); 

     request.addProperty(fieldsPropertyInfo); 

     PropertyInfo sessionPropertyInfo = new PropertyInfo(); 
     sessionPropertyInfo.setName("arg0"); 
     sessionPropertyInfo.setType(PropertyInfo.STRING_CLASS); 
     sessionPropertyInfo.setValue(sessionId); 
     request.addProperty(sessionPropertyInfo); 

     envelope.setOutputSoapObject(request); 

     envelope.addMapping(NAMESPACE, "fields", new Fields().getClass()); 

     HttpTransportSE androidHttpTransport = new HttpTransportSE(WSDL_URL); 
     // androidHttpTransport.debug = true; 


     try { 
      androidHttpTransport.call(SOAP_ACTION, envelope); 
     } catch (Exception e) { 
      throw new RuntimeException("Unexpected exception", e); 
     } 

     try { 
      SoapPrimitive resultsRequestSOAP = (SoapPrimitive) envelope.getResponse(); 
     } catch (SoapFault e) { 
      System.out.println("Error adding move: " + e.faultstring);//można to ładnie jakoś pokazać na ekranie 
      throw e; 
     } 
    } 

जैसा कि आप देख सकते हैं कि मैंने डिबगिंग मोड सेट करने का प्रयास किया है लेकिन यह काम नहीं करता है। मुझे आउटपुट देखने में सक्षम होना चाहिए?

उत्तर

19

आप लगभग, जवाब में पहुँच androidHttpTransport.debug = true और कॉल इस तरह डंप एक्सएमएल सेट:

androidHttpTransport.debug = true; 
    androidHttpTransport.call(SOAP_ACTION, envelope); 
    Log.d("dump Request: " ,androidHttpTransport.requestDump); 
    Log.d("dump response: " ,androidHttpTransport.responseDump); 
+4

बस सावधान रहना होगा और जब परिणाम प्राप्त होता है, अर्थात (onPostExecute) उदाहरण के लिए पिछले 2 पंक्तियां लिखें। –