简体   繁体   English

我的android xml解析应用程序在android模拟器中意外停止

[英]My android xml parsing application has stopped unexpectedly in android emulator

My android xml parsing application has stopped unexpectedly..this is the list of error in logcat: 我的android xml解析应用程序意外停止。.这是logcat中的错误列表:

10-18 17:26:12.965: ERROR/Zygote(33): setreuid() failed. errno: 2
10-18 17:26:12.965: ERROR/Zygote(33): setreuid() failed. errno: 17
10-18 17:26:12.965: ERROR/BatteryService(34): usbOnlinePath not found
10-18 17:26:12.965: ERROR/BatteryService(34): batteryVoltagePath not found
10-18 17:26:12.965: ERROR/BatteryService(34): batteryTemperaturePath not found
10-18 17:26:12.965: ERROR/SurfaceFlinger(34): Couldn't open /sys/power/wait_for_fb_sleep or /sys/power/wait_for_fb_wake
10-18 17:26:53.986: ERROR/EventHub(34): could not get driver version for /dev/input/mouse0, Not a typewriter
10-18 17:26:53.986: ERROR/EventHub(34): could not get driver version for /dev/input/mice, Not a typewriter
10-18 17:26:54.584: ERROR/System(34): Failure starting core service
10-18 17:26:54.584: ERROR/System(34): java.lang.SecurityException
10-18 17:26:54.584: ERROR/System(34):     at android.os.BinderProxy.transact(Native Method)
10-18 17:26:54.584: ERROR/System(34):     at android.os.ServiceManagerProxy.addService(ServiceManagerNative.java:146)
10-18 17:26:54.584: ERROR/System(34):     at android.os.ServiceManager.addService(ServiceManager.java:72)
10-18 17:26:54.584: ERROR/System(34):     at com.android.server.ServerThread.run(SystemServer.java:184)
10-18 17:26:56.766: ERROR/SoundPool(34): error loading /system/media/audio/ui/Effect_Tick.ogg
10-18 17:26:56.774: ERROR/SoundPool(34): error loading /system/media/audio/ui/KeypressStandard.ogg
10-18 17:26:56.774: ERROR/SoundPool(34): error loading /system/media/audio/ui/KeypressSpacebar.ogg
10-18 17:26:56.774: ERROR/SoundPool(34): error loading /system/media/audio/ui/KeypressDelete.ogg
10-18 17:26:56.784: ERROR/SoundPool(34): error loading /system/media/audio/ui/KeypressReturn.ogg
10-18 17:27:01.414: ERROR/ThrottleService(34): Could not open GPS configuration file /etc/gps.conf
10-18 17:27:04.125: ERROR/logwrapper(144): executing /system/bin/tc failed: No such file or directory
10-18 17:27:04.295: ERROR/logwrapper(145): executing /system/bin/tc failed: No such file or directory
10-18 17:27:04.456: ERROR/logwrapper(146): executing /system/bin/tc failed: No such file or directory
10-18 17:27:35.326: ERROR/HierarchicalStateMachine(34): TetherMaster - unhandledMessage: msg.what=3
10-18 17:29:27.438: ERROR/AndroidRuntime(386): FATAL EXCEPTION: main
10-18 17:29:27.438: ERROR/AndroidRuntime(386): java.lang.RuntimeException: Unable to start activity ComponentInfo{BasicWebService.com/BasicWebService.com.BasicWebServiceActivity}: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.os.Looper.loop(Looper.java:123)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at java.lang.reflect.Method.invokeNative(Native Method)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at java.lang.reflect.Method.invoke(Method.java:521)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at dalvik.system.NativeStart.main(Native Method)
10-18 17:29:27.438: ERROR/AndroidRuntime(386): Caused by: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at BasicWebService.com.BasicWebServiceActivity.getListFromXml(BasicWebServiceActivity.java:50)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at BasicWebService.com.BasicWebServiceActivity.onCreate(BasicWebServiceActivity.java:34)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-18 17:29:27.438: ERROR/AndroidRuntime(386):     ... 11 more
10-18 18:31:12.029: ERROR/AndroidRuntime(470): FATAL EXCEPTION: main
10-18 18:31:12.029: ERROR/AndroidRuntime(470): java.lang.RuntimeException: Unable to start activity ComponentInfo{BasicWebService.com/BasicWebService.com.BasicWebServiceActivity}: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.os.Looper.loop(Looper.java:123)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at java.lang.reflect.Method.invokeNative(Native Method)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at java.lang.reflect.Method.invoke(Method.java:521)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at dalvik.system.NativeStart.main(Native Method)
10-18 18:31:12.029: ERROR/AndroidRuntime(470): Caused by: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at BasicWebService.com.BasicWebServiceActivity.getListFromXml(BasicWebServiceActivity.java:49)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at BasicWebService.com.BasicWebServiceActivity.onCreate(BasicWebServiceActivity.java:33)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-18 18:31:12.029: ERROR/AndroidRuntime(470):     ... 11 more
10-18 18:31:32.038: ERROR/AndroidRuntime(504): FATAL EXCEPTION: main
10-18 18:31:32.038: ERROR/AndroidRuntime(504): java.lang.RuntimeException: Unable to start activity ComponentInfo{BasicWebService.com/BasicWebService.com.BasicWebServiceActivity}: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.os.Looper.loop(Looper.java:123)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at java.lang.reflect.Method.invokeNative(Native Method)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at java.lang.reflect.Method.invoke(Method.java:521)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at dalvik.system.NativeStart.main(Native Method)
10-18 18:31:32.038: ERROR/AndroidRuntime(504): Caused by: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at BasicWebService.com.BasicWebServiceActivity.getListFromXml(BasicWebServiceActivity.java:49)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at BasicWebService.com.BasicWebServiceActivity.onCreate(BasicWebServiceActivity.java:33)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-18 18:31:32.038: ERROR/AndroidRuntime(504):     ... 11 more
10-18 18:32:04.459: ERROR/DefContainer(196): Couldn't copy file: /data/local/tmp/basicWebService.apk
10-18 18:32:05.078: ERROR/AndroidRuntime(558): FATAL EXCEPTION: main
10-18 18:32:05.078: ERROR/AndroidRuntime(558): java.lang.RuntimeException: Unable to start activity ComponentInfo{BasicWebService.com/BasicWebService.com.BasicWebServiceActivity}: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.os.Looper.loop(Looper.java:123)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at java.lang.reflect.Method.invokeNative(Native Method)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at java.lang.reflect.Method.invoke(Method.java:521)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at dalvik.system.NativeStart.main(Native Method)
10-18 18:32:05.078: ERROR/AndroidRuntime(558): Caused by: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at BasicWebService.com.BasicWebServiceActivity.getListFromXml(BasicWebServiceActivity.java:49)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at BasicWebService.com.BasicWebServiceActivity.onCreate(BasicWebServiceActivity.java:33)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-18 18:32:05.078: ERROR/AndroidRuntime(558):     ... 11 more
10-18 18:33:02.668: ERROR/AndroidRuntime(584): FATAL EXCEPTION: main
10-18 18:33:02.668: ERROR/AndroidRuntime(584): java.lang.RuntimeException: Unable to start activity ComponentInfo{BasicWebService.com/BasicWebService.com.BasicWebServiceActivity}: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.os.Looper.loop(Looper.java:123)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at java.lang.reflect.Method.invokeNative(Native Method)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at java.lang.reflect.Method.invoke(Method.java:521)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at dalvik.system.NativeStart.main(Native Method)
10-18 18:33:02.668: ERROR/AndroidRuntime(584): Caused by: java.lang.ClassCastException: org.apache.harmony.xml.dom.ElementImpl
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at BasicWebService.com.BasicWebServiceActivity.getListFromXml(BasicWebServiceActivity.java:49)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at BasicWebService.com.BasicWebServiceActivity.onCreate(BasicWebServiceActivity.java:33)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-18 18:33:02.668: ERROR/AndroidRuntime(584):     ... 11 more

i have added an INTERNET permission in AndroidManifest.xml file..i have also added ACCESS_FINE_LOCATION and ACCESS_COARSE_LOCATION permissions..but no change..my code: 我已经在AndroidManifest.xml文件中添加了INTERNET权限。

package BasicWebService.com;

import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.Element;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;

import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class BasicWebServiceActivity extends Activity {
    /** Called when the activity is first created. */
    private ListView listView_xml;
    private ArrayList<String> xmlList = new ArrayList<String>();
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        listView_xml = (ListView) findViewById(R.id.listView_xml);  
        xmlList=getListFromXml();    
    }
    private ArrayList<String> getListFromXml() {
        // TODO Auto-generated method stub
        ArrayList<String> list=new ArrayList<String>();
        try {
            DocumentBuilder builder=DocumentBuilderFactory.newInstance().newDocumentBuilder();
            try {
                URL u=new URL("http://www.w3schools.com/aspnet/countries.xml");
                try {               
                    Document doc=builder.parse(new InputSource(u.openStream()));
                    doc.getDocumentElement().normalize();
                    NodeList nodeListCountry=doc.getElementsByTagName("country");
                    for(int i=0;i<nodeListCountry.getLength();i++)
                    {
                        Element elementMain=(Element) nodeListCountry.item(i);
                        NodeList nodeListText=( (Document) elementMain).getElementsByTagName("text");
                        Element elementText=(Element) nodeListText.item(0);
                        NodeList nodeListValue=( (Document) elementMain).getElementsByTagName("value");
                        Element elementValue=(Element) nodeListValue.item(0);
                        list.add(( (Node) elementText).getChildNodes().item(0).getNodeValue()+"--->"+((Node) elementValue).getChildNodes().item(0).getNodeValue());
                    }
                } catch (SAXException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            } catch (MalformedURLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }           
        } catch (ParserConfigurationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return list;
    }
    @Override
    protected void onStart() {
        // TODO Auto-generated method stub
        super.onStart();
        ArrayAdapter<String> arrayAdapt=new ArrayAdapter<String>(getApplicationContext(),android.R.layout.simple_list_item_multiple_choice,xmlList);
        listView_xml.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
        listView_xml.setAdapter(arrayAdapt);
    }
}

my main.xml: 我的main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
 <ListView 
    android:id="@+id/listView_xml" 
    android:layout_height="wrap_content" 
    android:layout_width="match_parent">
 </ListView>
</LinearLayout>

and my AndroidManifest.xml: 和我的AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="BasicWebService.com"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="8" />
    <uses-permission android:name="android.permission.INTERNET"></uses-permission> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".BasicWebServiceActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>

please help.. 请帮忙..

The stack trace is full of ClassCastExceptions getting thrown by line 49 of your BasicWebServiceActivity.java file. 堆栈跟踪中充满了ClassCastExceptions ,这些异常由BasicWebServiceActivity.java文件的第49行引发。 The trace indicates the offending line is in the getListFromXML() method. 跟踪表明有问题的getListFromXML()方法中。 I copied your code into a text editor and for me line 49 was: 我将您的代码复制到文本编辑器中,对我来说,第49行是:

   NodeList nodeListText=( (Document) elementMain).getElementsByTagName("text");

Here you are casting elements as documents which is probably causing the problem 在这里,您将元素转换为文档,这可能会导致问题

You are casting Element to Document when they are not instances of Document. 当它们不是Document的实例时,您正在将Element转换为Document。

NodeList nodeListText=( (Document) elementMain).getElementsByTagName("text");

NodeList nodeListValue=( (Document) elementMain).getElementsByTagName("value");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM