java.lang.nullpointerexception in getting attribute file from XML document



public class ResultsTitre extends ActionBarActivity {



org.w3c.dom.Document doc = null;
EditText resultActors;
EditText resultAnnee;
EditText resultGenre;
EditText resultPlot;
EditText resultRating;
EditText resultReleased;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_results_titre);

resultActors=(EditText)findViewById(R.id.resultActors);
resultActors.setEnabled(false);

resultAnnee=(EditText)findViewById(R.id.resultAnnee);
resultAnnee.setEnabled(false);

resultGenre=(EditText)findViewById(R.id.resultGenre);
resultGenre.setEnabled(false);

resultPlot=(EditText)findViewById(R.id.resultPlot);
resultPlot.setEnabled(false);

resultRating=(EditText)findViewById(R.id.resultRating);
resultRating.setEnabled(false);

resultReleased=(EditText)findViewById(R.id.resultReleased);
resultReleased.setEnabled(false);


new xmlFromHttpAsyncTask().execute("http://ift.tt/19GbbGf"+ titleTyped +"&r=xml");

}

private class xmlFromHttpAsyncTask extends AsyncTask<String, Void, Void> {


protected Void doInBackground(String... query) {
URL url;
try {
// La on crÈe la requete HTTP
url = new URL(query[0]);
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();

// Et on rÈcupËre la rÈponse de OMDBAPI
doc = db.parse(new InputSource(url.openStream()));
doc.getDocumentElement().normalize();


//Traitement des exceptions au cas o˘ ca plante, on s'en fout
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
}

return null;
}

protected void onPostExecute(Void n) {
createDisplay();
}

}

private void createDisplay(){

try {


NodeList nodeList = doc.getElementsByTagName("root");

Element rootElement = (Element) nodeList.item(0);

NodeList movieList = rootElement.getElementsByTagName("Movie");

Element e = (Element)movieList.item(0);



resultActors.setText(e.getAttribute("actors"));
resultAnnee.setText(e.getAttribute("year"));
resultGenre.setText(e.getAttribute("genre"));
resultPlot.setText(e.getAttribute("plot"));
resultRating.setText(e.getAttribute("imdbRating"));
resultReleased.setText(e.getAttribute("released"));
e.getAttribute("imdbID");


}
catch (Exception ex){
resultReleased.setText("ERROR : " + ex);
}
}


}


When I compile this code I get "java.lang.nullpointerexception" in my last catch ! I don't understand why ! Can someone help please ?


My XML file looks like this


No comments:

Post a Comment