Dom parser în Android 4.0 API

Problema mea este că Dom Parser nu funcționează în Android 4.0, dar lucrează la 2.2, dacă rulez proiectul în emulatorul meu 4.0 decât sub linie nu se execută și acest lucru nu dă nici o eroare.

Document doc = db.parse(inStream);

Urmează codul meu Java: -

public class TestParsingActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        StringBuffer sb = new StringBuffer();

        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
                .permitAll().build();
        StrictMode.setThreadPolicy(policy);

        System.setProperty("http.proxySet", "true");
        System.setProperty("http.proxyHost", "192.168.1.220");
        System.setProperty("http.proxyPort", "315");

        String NAMESPACE = "Dipak";
        String SOAP_ACTION = "Dipak/Start";
        String METHOD_NAME = "Start";
        String url = "http://google.co.uk/Dip/service1.asmx";

        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
        PropertyInfo p = new PropertyInfo();
        String qry = "select Password from Profiles where ID = (select uid from userprofiles where name = 'Dipak')";

        p.setName("SQL");
        p.setValue(qry);
        request.addProperty(p);
        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                SoapEnvelope.VER11);
        envelope.dotNet = true;
        envelope.setOutputSoapObject(request);
        HttpTransportSE httpTransport = new HttpTransportSE(url);
        httpTransport.debug = true;

        System.out.println("three**************");

        try {
            httpTransport.call(SOAP_ACTION, envelope);
            System.out.println("four**************");
           //SoapObject response=(SoapObject)envelope.bodyIn;
            SoapObject response = (SoapObject) envelope.getResponse();

            System.out.println("response =====>>>> "
                    + response.getProperty(0).toString());
           //SoapObject response=(SoapObject)envelope.getResponse();
           //SoapPrimitive response = (SoapPrimitive)envelope.getResponse();
            System.out.println("success**************");

            sb.append(response);
            System.out.println("Data from Search Job =====>>>> "
                    + sb.toString());
           //return response.toString();

        } catch (IOException e) {
           //TODO Auto-generated catch block
            e.printStackTrace();
        } catch (XmlPullParserException e) {
           //TODO Auto-generated catch block
            e.printStackTrace();
        }

        try {
            DocumentBuilderFactory factory = DocumentBuilderFactory
                    .newInstance();

            DocumentBuilder db = factory.newDocumentBuilder();
            InputSource inStream = new InputSource();

            System.out.println("Data from try  =====>>>> " + sb.toString());

            inStream.setCharacterStream(new StringReader(sb.toString()));

            System.out
                    .println("Data from try  =====>>>>11111111111111111111111111111 ");

            Document doc = db.parse(inStream);
            System.out
                    .println("Data from try  =====>>>>22222222222222222222222222222 ");

            Element root = doc.getDocumentElement();

            String root1 = doc.getTextContent();
            System.out
                    .println("Value of root................................................................................"
                            + root);
            System.out
                    .println("Value of root1................................................................................"
                            + root1);
            System.out
                    .println("................................................................................5");
        } catch (Exception e) {
           //TODO: handle exception
        }

    }
}

Orice ajutor ar fi apreciat, îmi pare rău pentru comunicarea mea proastă în engleză.

1

1 răspunsuri

De ce nu folosiți

response.getPropertyAsString(index);

sau

response.getPropertyAsString("PROPERTY_NAME");

?

But you still would like to use Dom parser, you can use HttpTranspsautSE.responseDump to get response in xml fsaumat and try parsing xml instead of ksaop2's response fsaumat.

0
adăugat
vă rugăm să dați niște explicații sau dacă u au orice exemplu de legătură vă rugăm să dați-mi.
adăugat autor Dipak Keshariya, sursa
Mulțumesc JPriest, problema mea este rezolvată.
adăugat autor Dipak Keshariya, sursa
Android dezvoltatori, România — Moldova
Android dezvoltatori, România — Moldova
27 participanți

Parteneri: ciupacabra.com, @php_ro, @js_ro, @node_ro iOS: @ro_ios Reguli: https://github.com/js-ro/it-telegram/blob/master/RULES.md