Top > SAStrutsあれこれ > AjaxでXMLデータを取得しましょう

Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 
 
 
 
 
 
-
|
|
-
|
!
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
!
!
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletResponse;
import org.seasar.struts.annotation.Execute;
import org.seasar.struts.util.ResponseUtil;
 
public class AjaxAction {
    
    @Execute(validator = false)
    public String index() {
        return "index.jsp";
    }
    
    @Execute(validator = false)
    public String load_xml() throws IOException {
        //XMLデータを返却します。
        HttpServletResponse httpServletResponse = ResponseUtil.getResponse();
        httpServletResponse.setContentType("application/xml");
        PrintWriter sendPoint = new PrintWriter(httpServletResponse.getOutputStream());
        sendPoint.println("<?xml version='1.0' encoding='UTF-8' ?>");
        sendPoint.println("<employees>");
        sendPoint.println("  <employee>");
        sendPoint.println("    <id>1</id>");
        sendPoint.println("    <name>ALLEN</name>");
        sendPoint.println("  </employee>");
        sendPoint.println("  <employee>");
        sendPoint.println("    <id>2</id>");
        sendPoint.println("    <name>WARD</name>");
        sendPoint.println("  </employee>");
        sendPoint.println("</employees>");
        sendPoint.flush();
        sendPoint.close();
        return null;
    }
}
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 
 
 
 
 
 
 
 
 
 
 
-
-
|
|
|
|
|
-
|
!
-
-
|
|
!
!
!
!
 
 
 
 
<%@page pageEncoding="UTF-8"%>
<html>
<head>
<title>Tutorial: Ajax</title>
<link rel="stylesheet" type="text/css" href="${f:url('/css/sa.css')}" />
<script src="${f:url('/js/jquery.js')}"></script>
</head>
<body>
<h1>Tutorial: Ajax</h1>
 
<script type="text/javascript">
function loadXML() {
  $.ajax({  
    url: '${f:url('/ajax/load_xml')}',  
    type: 'GET', 
    dataType: 'xml',    //レスポンスのデータ形式
    timeout: 1000,  
    cache: false,       //ブラウザにキャッシュさせません。
    error: function(){  //例外時のコールバック関数
        alert("xmlファイルの読み込みに失敗しました");  
    },  
    success: function(xml){  
        $(xml).find("employee").find("name").each(function(){  
            var item_text = $(this).text();  
            alert(item_text)
        });  
    }  
  });  
}
</script>
<input type="button" value="hello" onclick="loadXML()"/>
</body>
</html>


リロード   新規 編集 凍結解除 差分 添付 複製 名前変更   ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: 2012-08-08 (水) 23:25:56 (2923d)