JavaScript関数からのリクエストに対する応答として、いくつかのHTMLを送信するJavaサーブレットを取得しようとしています。しかし、サーブレット関数が呼び出され、応答を送信しているように見える間に、Javascript関数は空のStringだけを取得しています。ここでJavaScriptへのJavaサーブレットの応答
は、サーブレットの方法である:ここで
String type = request.getParameter("type");
if(type.equals("locos")) {
response.setContentType("text/html");
//this prints out
System.out.println("Responding with vehicle list");
//deal with response
PrintWriter out = response.getWriter();
out.write("<p>test response</p>"); //finish
}
JavaScript関数です:
this.updateVehicleList = function() {
var type = "locos";
var xhr = new XMLHttpRequest();
xhr.open('GET', 'GetList?type=' + encodeURIComponent(type),true);
xhr.send(null);
//deal with response
var res = xhr.responseText;
//for testing
if (res == "") {
window.alert("I'm getting nothing");
}
view.showVehicleList(res);
};
メッセージ "私は何を取得していますが、" 毎回出力します。実際にサーブレットからの応答を受け取るためにJavaScriptを取得するにはどうすればよいですか?
関連:[?サーブレットとAjaxを使用する方法](http://stackoverflow.com/questions/4112686/how-to-use-servlets-and-ajax)働いた – BalusC