2013-04-16 3 views
-1

Error Log:Jsoup NullPointer Исключение

04-16 23:05:29.133: W/dalvikvm(7474): threadid=1: thread exiting with uncaught exception (group=0x41550930) 
04-16 23:05:29.133: E/AndroidRuntime(7474): FATAL EXCEPTION: main 
04-16 23:05:29.133: E/AndroidRuntime(7474): java.lang.NullPointerException 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at com.example.yo.MainActivity$jsoupexample.onPostExecute(MainActivity.java:74) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at com.example.yo.MainActivity$jsoupexample.onPostExecute(MainActivity.java:1) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at android.os.AsyncTask.finish(AsyncTask.java:631) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at android.os.AsyncTask.access$600(AsyncTask.java:177) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at android.os.Handler.dispatchMessage(Handler.java:99) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at android.os.Looper.loop(Looper.java:137) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at android.app.ActivityThread.main(ActivityThread.java:5041) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at java.lang.reflect.Method.invokeNative(Native Method) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at java.lang.reflect.Method.invoke(Method.java:511) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 
04-16 23:05:29.133: E/AndroidRuntime(7474):  at dalvik.system.NativeStart.main(Native Method) 
04-16 23:05:29.163: D/dalvikvm(7474): GC_CONCURRENT freed 557K, 9% free 8027K/8736K, paused 2ms+4ms, total 28ms 

Код

@TargetApi(Build.VERSION_CODES.GINGERBREAD) 
public class MainActivity extends Activity { 

    Document doc; 
    TextView tv; 
    String res=""; 
    String BLOG_URL = "http://www.google.co.in/"; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     // set layout view 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     new jsoupexample().execute(BLOG_URL); 
    } 
    public class jsoupexample extends AsyncTask<String,Integer,String> 
    { 
     @Override 
     protected String doInBackground(String... BLOG_URL) { 
      try { 
       doc= Jsoup.connect(BLOG_URL[0]).userAgent("Mozilla/5.0").timeout(20000).get(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
      Elements links = doc.select("a[href]"); 
      for(Element element: links) 
      { 
       res = element.attr("href"); 
      } 
      return res; 
     } 
     @Override 
     protected void onPostExecute(String result) { 
      // TODO Auto-generated method stub 
      super.onPostExecute(result); 

      if(result!=null && !result.isEmpty()) 
      tv.setText(result); 
      else 
      tv.setText("no value returned"); 
     } 
    } 
} 
+0

Где находится вопрос ???? –

+0

Я получаю NullPointerException в этом коде –

+0

@GunjitDhawan, если ваш код на самом деле отформатирован так же, как и когда вы разместили его внутри своей IDE, вам нужно вернуться и отформатировать его правильно (попробуйте ctrl-shift-F, если вы используете eclipse). Код с неправильным отступом затруднит поиск ошибок – FoamyGuy

ответ

0

tv равна нулю. Инициализировать его в onCreate:

tv = (TextView)findViewById(R.id.<the-id>); 
+0

Thnxx a Lot !! : D –

0

В вашем методе onPstExecute() у вас есть эта строка: tv.setText (результат);

Вы никогда не создавали экземпляр tv, при этом оно равно нулю. Когда вы пытаетесь вызвать метод на null, вы получаете исключение NullPointerException.

+0

Thnxx a Lot !! : D –

Смежные вопросы