2011-01-18 13 views
0
public List<Afood> getFoodFromCat(String cat) { 
    String resultado = ""; 
    List<Afood> list = new ArrayList<Afood>(); 

    try { 
     URL xpto = new URL("http://10.0.2.2/webservice/nutrituga/get_food_by_cat.php"); 
     HttpURLConnection conn; 

     conn = (HttpURLConnection) xpto.openConnection(); 
     conn.setDoInput(true); 

     conn.connect(); 
     InputStream is = conn.getInputStream(); 

     DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 

     try { 

      DocumentBuilder db = dbf.newDocumentBuilder(); 
      Document doc = db.parse(is); 
      NodeList nl = doc.getElementsByTagName("item"); 

      // resultado = String.valueOf(nl.getLength()); 
      for (int i = 0; i < nl.getLength(); i++) { 

       Node n = nl.item(i); 

       Node childNode = n.getFirstChild(); 

       while (childNode != null) { 

        if (childNode.getNodeType() == Node.ELEMENT_NODE) { 

         if (childNode.getNodeName().equalsIgnoreCase(
           "NAME_FOOD")) { 

          Node valor = childNode.getFirstChild(); 
          // resultado = resultado + valor.getNodeValue(); 
          list.add(new Afood(valor.getNodeValue(), "", 
            (int) Math.round(Math.random()), 1, 1, 
            1, 1, 1, 1)); 
         } 
        } 
        childNode = childNode.getNextSibling(); 
       } 
      } 
      return list; 

     } catch (ParserConfigurationException e1) { 
      e1.printStackTrace(); 
     } catch (SAXException e1) { 
      e1.printStackTrace(); 
     } catch (IOException e1) { 
      e1.printStackTrace(); 
     } 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    return list; 
} 

xmlを受信して​​リストにコピーするこの関数があります。これはうまく実装されています。 私が知りたいのは、(私は関数の引数のように)カテゴリを送信し、そのカテゴリからの食品だけを受け取ることです。引数を送信する/受け取るxml(既に受信済み/送信しない)

サーバーは、カテゴリを受信し、そのカテゴリから食品を送る準備ができています。
カテゴリを送信して正しいxmlを受け取るにはどうすればよいですか?

答えて

0

私はそれを把握していると思います。
まだテストされていませんが、私がしなければならないことは、猫をURLに置くことだと思います。

例:URL xpto =新しいURL( "http://10.0.2.2/webservice/nutrituga/get_food_by_cat.php?cat=" + cat ");

これは間違いありませんか?

関連する問題