サーブレットに ajax 呼び出しを行い、応答を出力したいと考えています。index.html
、 Assignemnt
サーブレット、および次のように記述web.xml
しましたが、アラートが表示されません。何がうまくいかないのですか?
index.html
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
<script>
$(document).ready(function() {
$("button").click(function() {
$.get("Assignment", function(data, status) {
alert("Data: " + data + "\nStatus: " + status);
});
});
});
</script>
<title>Insert title here</title>
</head>
<body>
<form method="GET" action="Assignment" name="showall">
<table>
<tr>
<td><input type="checkbox" name="id1" /></td>
<td>Jim</td>
<td>Knopf</td>
</tr>
<tr>
<td><input type="checkbox" name="id2" /></td>
<td>Jim</td>
<td>Bean</td>
</tr>
</table>
<p>
<button>Send an HTTP GET request to a page and get the
result back</button>
</p>
</form>
</body>
</html>
サーブレット:
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
System.err.println("-------++++");
String data = "Hello World!";
response.setContentType("text/plain");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(data);
//RequestDispatcher rd = request.getRequestDispatcher("/Assignment");
RequestDispatcher rd = request.getRequestDispatcher("/index.html");
rd.forward(request, response);
}
サーブレット マッピング:
<servlet>
<description>FirstAssignment</description>
<display-name>Assignment</display-name>
<servlet-name>Assignment</servlet-name>
<servlet-class>com.Assignment</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Assignment</servlet-name>
<url-pattern>/Assignment</url-pattern>
</servlet-mapping>