Hast du da in der doPost() mal einen breakpoint oder eine debug-Ausgabe platziert, d.h. kommt der request überhaupt so weit, dass er verarbeitet wird? Vielleicht erreicht der request deinen GlassFish gar nicht. Könntest zum Beispiel mal im Browser in F12 nachsehen, ob der request rausgeht und ob er nicht in einem 400er oder 500er resultiert.
Oben bei deinem Snippet fehlen übrigens die schließenden Anführungszeichen nach
Datenübergabe erfolgreich!. Aber ich vermute mal das hast du schon behoben, sonst würde das ganze Script ja nicht funktionieren.
Edit: Ich hab das mal spaßeshalber nachgebaut. Hab selbst lange keine Servlets mehr an der Hand gehabt und "manuell" ajax requests abgefeuert schon gar nicht.
Jedenfalls ging es bei mir erstmal auch nicht. Die error-Funktion bringt aber 3 Parameter mit, die einem Auskunft geben:
Code:
Uncaught SyntaxError: Unexpected end of input
Durch die doPost ging es aber durch. Da muss also noch irgendeine Kleinigkeit nicht passen. Vielleicht muss man im Servlet den response type angeben (JSON oder wie auch immer).
Ich wollte mich aber nicht zu lange mit dieser Kleinigkeit aufhalten und habe einfach mal jQuery's
post-Funktion benutzt und das ging auf Anhieb problemlos. Im Gegensatz zu der Version mit der ajax-Funktion kamen sogar meine Parameter mit dem POST mit.
Code:
$.post("ServiceSandbox", {
value1:"huhu",
value2:"hihi"
},
function(data, status) {
console.log(status+" - " + data);
}
);
Probier es also erstmal damit. Wenn das funktioniert, kannst du immer noch mit dem "low-level" call der ajax-Funktion spielen.
Ich muss dazu sagen, dass ich das auf einem Tomcat hab laufen lassen, aber das sollte keinen Unterschied machen.