berto1989
27/09/13, 00:21:45
Buenas, estoy intentando leer un XML online, pero al cargar el evento que se conecta al servidor me suelta lo siguiente:
09-27 00:17:17.850: E/AndroidRuntime(22131): FATAL EXCEPTION: main
09-27 00:17:17.850: E/AndroidRuntime(22131): java.lang.RuntimeException: Unable to start activity ComponentInfo{es.xxx.xxxx/es.xxx.xxxx.ListadoEventos}: java.lang.RuntimeException: android.os.NetworkOnMainThreadException
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2071)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2096)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.access$600(ActivityThre ad.java:138)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1207)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.os.Handler.dispatchMessage(Handler.java:99 )
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.os.Looper.loop(Looper.java:213)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.main(ActivityThread.jav a:4787)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.lang.reflect.Method.invokeNative(Native Method)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.lang.reflect.Method.invoke(Method.java:511)
09-27 00:17:17.850: E/AndroidRuntime(22131): at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:789)
09-27 00:17:17.850: E/AndroidRuntime(22131): at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:556)
09-27 00:17:17.850: E/AndroidRuntime(22131): at dalvik.system.NativeStart.main(Native Method)
09-27 00:17:17.850: E/AndroidRuntime(22131): Caused by: java.lang.RuntimeException: android.os.NetworkOnMainThreadException
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.SaxXML.parseXML(SaxXML.java:47)
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.ListadoEventos.onCreate(ListadoEventos .java:31)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.Activity.performCreate(Activity.java:5 008)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1079)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2035)
09-27 00:17:17.850: E/AndroidRuntime(22131): ... 11 more
09-27 00:17:17.850: E/AndroidRuntime(22131): Caused by: android.os.NetworkOnMainThreadException
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.os.StrictMode$AndroidBlockGuardPolicy.onNe twork(StrictMode.java:1126)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.net.InetAddress.lookupHostByName(InetAddress. java:385)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.net.InetAddress.getAllByNameImpl(InetAddress. java:236)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.net.InetAddress.getAllByName(InetAddress.java :214)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection$Address.connect(Ht tpConnection.java:340)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnectionPool.get(HttpConnec tionPool.java:87)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection.connect(HttpConnec tion.java:128)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.openSocketConnection(H ttpEngine.java:315)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.connect(HttpEngine.jav a:310)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.sendSocketRequest(Http Engine.java:289)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.sendRequest(HttpEngine .java:239)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpURLConnectionImpl.getResponse (HttpURLConnectionImpl.java:273)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpURLConnectionImpl.getInputStr eam(HttpURLConnectionImpl.java:168)
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.SaxXML.getInputStream(SaxXML.java:57)
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.SaxXML.parseXML(SaxXML.java:43)
y no tengo manera de solucionarlo.
El error debe saltar en esta parte
try {
SAXParser parser = factory.newSAXParser();
LeerXml handler = new LeerXml();
parser.parse(this.getInputStream(), handler);
return handler.geteventos();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
gracias de antemano
09-27 00:17:17.850: E/AndroidRuntime(22131): FATAL EXCEPTION: main
09-27 00:17:17.850: E/AndroidRuntime(22131): java.lang.RuntimeException: Unable to start activity ComponentInfo{es.xxx.xxxx/es.xxx.xxxx.ListadoEventos}: java.lang.RuntimeException: android.os.NetworkOnMainThreadException
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2071)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2096)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.access$600(ActivityThre ad.java:138)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1207)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.os.Handler.dispatchMessage(Handler.java:99 )
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.os.Looper.loop(Looper.java:213)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.main(ActivityThread.jav a:4787)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.lang.reflect.Method.invokeNative(Native Method)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.lang.reflect.Method.invoke(Method.java:511)
09-27 00:17:17.850: E/AndroidRuntime(22131): at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:789)
09-27 00:17:17.850: E/AndroidRuntime(22131): at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:556)
09-27 00:17:17.850: E/AndroidRuntime(22131): at dalvik.system.NativeStart.main(Native Method)
09-27 00:17:17.850: E/AndroidRuntime(22131): Caused by: java.lang.RuntimeException: android.os.NetworkOnMainThreadException
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.SaxXML.parseXML(SaxXML.java:47)
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.ListadoEventos.onCreate(ListadoEventos .java:31)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.Activity.performCreate(Activity.java:5 008)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1079)
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2035)
09-27 00:17:17.850: E/AndroidRuntime(22131): ... 11 more
09-27 00:17:17.850: E/AndroidRuntime(22131): Caused by: android.os.NetworkOnMainThreadException
09-27 00:17:17.850: E/AndroidRuntime(22131): at android.os.StrictMode$AndroidBlockGuardPolicy.onNe twork(StrictMode.java:1126)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.net.InetAddress.lookupHostByName(InetAddress. java:385)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.net.InetAddress.getAllByNameImpl(InetAddress. java:236)
09-27 00:17:17.850: E/AndroidRuntime(22131): at java.net.InetAddress.getAllByName(InetAddress.java :214)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection$Address.connect(Ht tpConnection.java:340)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnectionPool.get(HttpConnec tionPool.java:87)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpConnection.connect(HttpConnec tion.java:128)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.openSocketConnection(H ttpEngine.java:315)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.connect(HttpEngine.jav a:310)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.sendSocketRequest(Http Engine.java:289)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpEngine.sendRequest(HttpEngine .java:239)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpURLConnectionImpl.getResponse (HttpURLConnectionImpl.java:273)
09-27 00:17:17.850: E/AndroidRuntime(22131): at libcore.net.http.HttpURLConnectionImpl.getInputStr eam(HttpURLConnectionImpl.java:168)
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.SaxXML.getInputStream(SaxXML.java:57)
09-27 00:17:17.850: E/AndroidRuntime(22131): at es.xxx.xxxx.SaxXML.parseXML(SaxXML.java:43)
y no tengo manera de solucionarlo.
El error debe saltar en esta parte
try {
SAXParser parser = factory.newSAXParser();
LeerXml handler = new LeerXml();
parser.parse(this.getInputStream(), handler);
return handler.geteventos();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
gracias de antemano