Hallo,
bei einem XMLHttpRequest hast du den JSON-Code in der Eigenschaft responseText (statt responseXML). Du musst diesen String noch selbst in ein JavaScript-Objekt parsen, um in JavaScript auf die Daten zugreifen zu können. Das kannst du mit JSON.parse() machen. Das window.JSON-Objekt sowie die parse-Methode haben einige Browser schon nativ eingebaut, für den Rest gibt es einen JSON-Parser in JavaScript, den du einbinden kannst: http://www.json.org/js.html.
Prüfe mal die Ausgabe deines FotoAntwort.jsp. Da sollte nur JSON-Code drinstehen. Der MIME-Typ sollte application/json sein. Kein HTML-Code, auch keine Kommentare.
Anstelle eines Objects solltest du einen Array verwenden. Den kannst du nach dem Parsen einfach durchlaufen.
Beispiel
JSON-String der JSP:
[ { "url" : "bild.jpg", "name" : "Hallo Welt", ... }, ... ]
JavaScript-Verarbeitung:
var bilderHTML = '';
var bilder = JSON.parse(client.responseText);
for (var i = 0, l = bilder.length; i < l; i++) {
var bild = bilder[i];
bilderHTML += '<img src="' + bild.url + '">' + bild.name; // usw.
}
Das ist im Grunde viel einfacher als XML-DOM.
Mathias