重複の可能性:
例外は常に NULL です
IOException オブジェクトに奇妙な問題があり、これに対する答えが見つかりませんでした。
コードは次のようになります。
try { // This isn't very important part, but maybe it has something to do with a problem
HttpResponse response = client.execute(httpGet);
StatusLine statusLine = response.getStatusLine();
int statusCode = statusLine.getStatusCode();
if (statusCode == 200) {
HttpEntity entity = response.getEntity();
InputStream content = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(content));
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
}
} else {
Log.e(ParseJSON.class.toString(), "Failed to download file");
}
} catch (IOException e) {
System.out.println("I'm here in the IOException catch clause");
e.printStackTrace(); // e is null (line 126)
} catch (Exception e) {
e.printStackTrace();
}
プログラムは をキャッチIOException
しますが、そのオブジェクト (e) はnull
です。これはどのように可能ですか?
編集:スタックトレース:
09-25 19:35:59.438: I/System.out(31732): I'm here in the IOException catch clause
09-25 19:36:04.377: W/dalvikvm(31732): threadid=1: thread exiting with uncaught exception (group=0x40020ac0)
09-25 19:36:04.447: E/AndroidRuntime(31732): FATAL EXCEPTION: main
09-25 19:36:04.447: E/AndroidRuntime(31732): java.lang.RuntimeException: Unable to start activity ComponentInfo{uniwersytet.ekiosk/uniwersytet.ekiosk.EkioskActivity}: java.lang.NullPointerException
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.os.Handler.dispatchMessage(Handler.java:99)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.os.Looper.loop(Looper.java:123)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.app.ActivityThread.main(ActivityThread.java:4627)
09-25 19:36:04.447: E/AndroidRuntime(31732): at java.lang.reflect.Method.invokeNative(Native Method)
09-25 19:36:04.447: E/AndroidRuntime(31732): at java.lang.reflect.Method.invoke(Method.java:521)
09-25 19:36:04.447: E/AndroidRuntime(31732): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
09-25 19:36:04.447: E/AndroidRuntime(31732): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
09-25 19:36:04.447: E/AndroidRuntime(31732): at dalvik.system.NativeStart.main(Native Method)
09-25 19:36:04.447: E/AndroidRuntime(31732): Caused by: java.lang.NullPointerException
09-25 19:36:04.447: E/AndroidRuntime(31732): at uniwersytet.ekiosk.EkioskActivity.onCreate(EkioskActivity.java:126)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
09-25 19:36:04.447: E/AndroidRuntime(31732): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
09-25 19:36:04.447: E/AndroidRuntime(31732): ... 11 more