質問

XMLドキュメントのノードリストを取得するために、次のクラスを開発しました。

public class XMLDownloader {
    public static NodeList getNodeList(){   
        String url = "http://localhost/xml/example.xml";
        DefaultHttpClient client = new DefaultHttpClient();
        HttpGet method = new HttpGet(url);
        HttpResponse res = null;
        NodeList result = null;

        try {
            res = client.execute(method);
        } catch (ClientProtocolException e1) {
            e1.printStackTrace();
        } catch (IOException e1) {
            e1.printStackTrace();
        }

        try{
            InputStream is = res.getEntity().getContent();
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            DocumentBuilder db = dbf.newDocumentBuilder();
            Document doc = db.parse(is);
            doc.getDocumentElement().normalize();
            result = doc.getElementsByTagName("client");                         
            is.close();

        }catch(Exception e){
             Log.e("log_tag", "Error converting result "+e.toString());
        }       
        return result;              
    }
}

しかし、この方法は返されます null. 。何か案は?

XMLファイル:

<status>
<client type="s" name="test1" protocol="1000">
      </client>
<client type="r" name="test2" protocol="2000"> 
      </client>
<client type="r" name="test3" protocol="3000"> 
      </client>
<client type="h" name="test4" protocol="4000"> 
      </client>
<client type="c" name="test5" protocol="5000"> 
      </client>
</status>
役に立ちましたか?

解決

質問に投稿されたコードは、実際にはエラーなしで私にとって機能します。予想される5つの要素を含むノデリストを取得します。 2.2を実行しているエミュレータで試しました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top