Ajax JSON Objekt verschicken

BlubBlub

Bekanntes Mitglied
javascript
Code:
$.ajax({
							type: "POST",
							url: zielUrl,
							data: {wanted:"einArray"},													
							cache:false,
							dataType: "json",
							
							success: function(data)	 												
							{
                                                             var AnArray = eval('('+data+')');
                                                             alert(AnArray[0]);
                                                        }
            });

java servlet
Java:
  protected void doPost(HttpServletRequest request, HttpServletResponse response)  throws ServletException, IOException 
  {
            PrintWriter out = response.getWriter();
            response.setContentType("application/json");
            out.println("{'meinArray':['Zitrone','Banane','Orange']}");
             out.close();
 }

Hi wie kann man mit Ajax auf ein Array zugreifen, dass man sich vom Servlet holt?
Hab versucht ein JSON Objekt zu verschicken und auf der Clientseite auszugeben aber es klappt nicht.
 

Noctarius

Top Contributor
Ich würde Java POJOs nutzen und per GSON oder Jackson konvertieren lassen. Dann brauchst du dich auch nicht um gewisse Kleinigkeiten kümmern.
 

mvitz

Top Contributor
1) Deine Rückgabe ist falsch (anstelle der ' muss man ein " nutzen, in Java kannst du das in einen String packen indem du das " mit einem \ escapst).

2) Du gibts kein Array zurück, sondern ein Objekt, dass unter der Property "meinArray" ein Array enthält.

3) Man soll Streams nur dann schließen, wenn man Sie auch selber geöffnet hat.

Folgendes hat bei mir funktioniert:

AjaxServlet.java
Java:
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@SuppressWarnings("serial")
public class AjaxServlet extends HttpServlet {

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        final PrintWriter out = resp.getWriter();
        resp.setContentType("application/json");
        out.println("[\"A\", \"B\", \"C\"]");
    }

}

index.html
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Ajax Example</title>
    <script type="text/javascript" src="jquery-1.6.js"></script>
    <script type="text/javascript">
      $.ajax({
        type: "POST",
        url: "ajax",
        dataType: "json",
        success: function(data) {
          var array = eval(data);
          $.each(array, function(index, value) {
            alert(index + ': ' + value);
          });
        }
      })
    </script>
  </head>
   <body>
   </body>
</html>
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
pkm Probleme mit einem AJAX-Call in einem dynamischen Webprojekt Web Tier 15
S AJAX/RestController Post Problem Web Tier 18
J JSF/JEE6 asynchronie Statusmeldungen per ajax Web Tier 1
J Funktion für AJAX - Problem mit Return Web Tier 14
D Servlet 1 Servlet für alles - Wie Cookies per Ajax? Web Tier 1
J Wicket: Füllen von Textarea via AJAX irgendwo auf der PAGE Web Tier 1
S JSF mit Ajax? Web Tier 3
V Wie baue ich eine Ajax Webanwendung? Suche Beispielanwendung (UML) eines AJAX Service Web Tier 0
P JSF Ajax aktualisiert Seite neu Web Tier 2
L JSF Composit Component mit ajax funktioniert nicht. Web Tier 4
M Ajax Fehler zur Laufzeit Web Tier 5
T JSF Primefaces: DataTable Ajax Update - Weiterleitung von anderer Seite Web Tier 11
S JSF SelectOneMenu - Probleme mit AJAX Web Tier 6
S JSF ComboBox mit JSF 2.0/ajax Web Tier 4
Kenan89 Class Funktion mit Ajax rufen Web Tier 13
P JSF tag "ajax" not found Web Tier 3
M JSF DataTable refreshen mit Ajax? Web Tier 5
R JSF Mit Ajax ganze Seite neu laden Web Tier 2
J Ajax ist undefiniert Web Tier 3
P JSF AJAX render wird nicht ausgeführt Web Tier 4
M JSF Ajax Command Link Web Tier 2
X Seite wird mit AJAX neu geladen Web Tier 4
J JSF AJAX-Aufruf ohne Komponente Web Tier 4
S Richfaces 4.0 Ajax Waitingpanel Web Tier 2
G JSF 2x h:selectManyCheckbox ohne duplikate Auswahl/selectManyCheckbox und f:ajax Web Tier 3
P JSF Login per Ajax validieren. Was ist der Beste Weg? Web Tier 4
S Ajax Request verhindert forward? Web Tier 8
P JSF Ajax refresh nach Linkklick Web Tier 4
N Htmlunit Test mit Ajax Web Tier 2
D JSF Ajax mit Facelets (PrimeFaces) Web Tier 4
G mit Ajax ein Image vom Server holen Web Tier 2
J JSP und Ajax Web Tier 6
7 Struts+AJAX- Session-Handling? Web Tier 2
H Richfaces - Taglib Problem gelb unterstrichen Ajax Output Web Tier 6
S Framework, AJAX Drag and Drop Hilfe? Web Tier 2
H Welches Ajax Framework Web Tier 8
7 Struts und Ajax. Problem mit Actions Web Tier 2
F AJAX: Inhalt nachladen + load icon Web Tier 2
I AJAX - Problem Web Tier 18
I AJAX update Web Tier 2
T <f:ajax> in JSF2.0 Komponente ein- und ausblenden Web Tier 4
D [JSF] Center per Ajax wechseln Web Tier 3
D Ajax und Validation ohne große Umstrukturierung Web Tier 3
G Probleme mit Ajax Login (jsp) Web Tier 5
I Ajax DOM speichern Web Tier 27
V Image Map und Ajax-Richfaces Web Tier 5
J Ajax in MyFaces? Web Tier 6
K Orientierungslosigkeit: Webservice+Ajax(echo2)+Session-Management Web Tier 4
S Beschleunigung Verarbeitung, ...Ajax Client-Side? Web Tier 3
C RichFaces Ajax ReRender funktioniert nicht. Web Tier 2
T Ajax / Javascript Plugin für Eclipse Web Tier 1
G AJAX und J2EE Web Tier 6
G JSF Webanwendung Editor für JSON gesucht Web Tier 1
K JSON in Primefaces Table Web Tier 3
A JSON von JavaScript an Servlet Web Tier 9
C JSON-Antwort an Javascript geht nicht Web Tier 7
I GWT + JSON + ? + MySQL Web Tier 12
G Json post Web Tier 4
T Json mit Struts 2 Web Tier 2
neonfly JSON response undefined Web Tier 5
M JSP Objekt in eine JavaBean übergeben Web Tier 7
S Architektur-Problem? 2 Servlets, ein Objekt Web Tier 4

Ähnliche Java Themen

Neue Themen


Oben