1. Wir haben diesmal 2 Gewinnspiele zeitgleich für euch - Gewinne einmal ein UMI Plus E - Beim 2ten könnt ihr ein Nomu S30 gewinnen!
  1. wiesel32, 20.01.2011 #1
    wiesel32

    wiesel32 Threadstarter Neuer Benutzer

    Hallo,
    mit diesem Code lasse ich mir ein xml File anzeigen.
    Das funktioniert alles so weit.

    Schalte ich die Passwortabfrage auf meinem Server ein funktionier es nicht so wie ich es mir vorgestellt habe.

    Code:
     URL url = new URL("[URL]http://benutzername:passwort192.168.2.27/test.xml[/URL]");
    
    Wie komme ich an das xml File wenn die Paswortabfrage aktiviert ist ?


    Danke für eure Tips.


    Gruss





    ohne Passwortabfrage funktioniert es so:

    Code:
     
        public class XMLTest extends Activity {
     
            @Override
            public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          LinearLayout layout = new LinearLayout(this);
          layout.setOrientation(1);
     
          TextView name[];
          TextView protocol[];
     
          try {
     
           URL url = new URL("[URL]http://192.168.2.27/test.xml[/URL]");
           DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
           DocumentBuilder db = dbf.newDocumentBuilder();
           Document doc = db.parse(new InputSource(url.openStream()));
           doc.getDocumentElement().normalize();
     
           NodeList nodeList = doc.getElementsByTagName("liste");
     
           name = new TextView[nodeList.getLength()];
     
           for (int i = 0; i < nodeList.getLength(); i++) {
     
            Node node = nodeList.item(i);
     
            name[i] = new TextView(this);
     
            Element fstElmnt = (Element) node;
     
            NodeList clientList = fstElmnt.getElementsByTagName("liste");
                  Element websiteElement = (Element) clientList.item(0);
     
            name[i].setText(websiteElement.getAttribute("name") + " " + websiteElement.getAttribute("adresse")); 
     
            layout.addView(name[i]);
     
           }
          } catch (Exception e) {
           System.out.println("XML Pasing Excpetion = " + e);
          }
     
          /** Set the layout view to display */
          setContentView(layout);
     
     
         }
        }
    
     
  2. WasserDragoon, 20.01.2011 #2
    WasserDragoon

    WasserDragoon Android-Hilfe.de Mitglied

    Zuletzt bearbeitet: 20.01.2011
  3. wiesel32, 20.01.2011 #3
    wiesel32

    wiesel32 Threadstarter Neuer Benutzer

    wenn ich das so im Browser eingebe dann bekomme ich Daten:

    http://admin:pass@192.168.2.20/test.xml


    so bekomme ich auch keine Daten angezeigt.
    ohne Passwortabfrage geht es natürlich...

    Idee ?


    Code:
     
    try {
     
    
    [LEFT]URL url = new URL("[URL]http://192.168.2.20/test.xml[/URL]");
    Authenticator.setDefault(new Authenticator(){ 
    protected PasswordAuthentication getPasswordAuthentication() { 
    return new PasswordAuthentication("admin","pass".toCharArray()); 
    }});
    HttpURLConnection c = (HttpURLConnection) url.openConnection();
    
    c.setUseCaches(false);
    c.connect();[/LEFT]
     
           DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
           DocumentBuilder db = dbf.newDocumentBuilder();
           Document doc = db.parse(new InputSource(url.openStream()));
           doc.getDocumentElement().normalize();
    
           NodeList nodeList = doc.getElementsByTagName("liste");
    
           name = new TextView[nodeList.getLength()];
    
           for (int i = 0; i < nodeList.getLength(); i++) {
    
            Node node = nodeList.item(i);
    
            name[i] = new TextView(this);
    
            Element fstElmnt = (Element) node;
    
            NodeList clientList = fstElmnt.getElementsByTagName("liste");
                  Element websiteElement = (Element) clientList.item(0);
    
            name[i].setText(websiteElement.getAttribute("name") + " " + websiteElement.getAttribute("adresse")); 
    
            layout.addView(name[i]);
    
           }
          } catch (Exception e) {
           System.out.println("XML Pasing Excpetion = " + e);
          }
    
          /** Set the layout view to display */
          setContentView(layout);
    
    
         }
        }
    
    
     

Diese Seite empfehlen