2016-10-10 10 views
0

私は、サーブレットからJSONを送信するAJAX呼び出しでそのjspからjsonデータを受信して​​解析する方法は?

User profileUser = userService.get(id); 
request.setAttribute("profileUser", profileUser); 
JSONObject json = new JSONObject(); 
try { 
    json.put("profileUser", profileUser); 
} catch (JSONException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 
response.setContentType("application/json"); 
response.getWriter().write(json.toString()); 

とJavaScriptで

$.ajax({ 
    cache : false, 
    type : "GET", 
    url : "UserServlet?id=" + userId, 
    success : function(result) { 
     alert(result.profileUser); 
    } 
}); 

のような警告の結果は私にEntity.userを与えるが、私はresult.profileUserを呼び出したい場合はされています。そのユーザーのuuidまたはプロパティは私をundefinedに返します。誰でも助けてくれますか?

+0

実際のHTTPレスポンスは何ですか? – SLaks

+0

@SLaks 302は一時的に移動しました – joesid

答えて

1

あなたはAjaxクライアントにJSONを送信する場合、その後、あなたはJSON形式を受け取るしようとしていることを指定する必要があります。このように:

$.ajax({ 
    cache : false, 
    type : "GET", 
    dataType : "json", 
    url : "UserServlet?id=" + userId, 
    success : function(result) { 
     alert(result.profileUser); 
    } 
}); 

これは、結果パラメータをjsonオブジェクトとして評価する原因になります。

0
を次のようにあなたのAjaxを変更

$.ajax({ 
    cache : false, 
    type : "GET", 
    url : "UserServlet?id=" + userId, 
    success : function(profileUser) { 
     alert(profileUser.uuid); 
    } 
}); 
関連する問題