????????е????ajax????????????

[1]дindex.jsp???
??<%@ page contentType="text/html;charset=gb2312"%>
??<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
??<html>
??<head>

<title>My JSP 'index.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
??<meta http-equiv="cache-control" content="no-cache">
??<meta http-equiv="expires" content="0">
??<meta http-equiv="description" content="This is my page">
??<link rel="stylesheet" type="text/css" href="styles.css">
??</head>

<body>
??<script type="text/javascript">
??var req;

function validate() {
??var idField = document.getElementById("userid");
??var url = "servlet/ValidateServlet?id=" + escape(idField.value);
??if (window.XMLHttpRequest) {
??alert("0");
??req = new XMLHttpRequest();
??}else if (window.ActiveXObject) {
??alert("1");
??req = new ActiveXObject("Microsoft.XMLHTTP");
??}
??if(req){
??req.open("GET"?? url?? true);
??req.onreadystatechange = callback;
??req.send(null);
??}
??}
??function callback() {
??if (req.readyState == 4) {
??if (req.status == 200) {
??parseMessage();
??// update the HTML DOM based on whether or not message is valid
??}else{
??alert ("Not able to retrieve description" + req.statusText);
??}
??}
??}
??function parseMessage() {
??var message = req.responseXML.getElementsByTagName("message")[0];
??var name = req.responseXML.getElementsByTagName("name")[0];
??setMessage(message.firstChild.data??name.firstChild.data);
??}
??function setMessage(message??name) {
??var userMessageElement = document.getElementById("userIdMessage");
??userMessageElement.innerHTML = "<font color="red">" + message + " you "+name+"</font>";
??}
??</script>
??<div id="userIdMessage"></div>
??<input type="text"
??size="20"
??id="userid"
??name="id"
??onkeyup="validate();">
??</body>
??</html>
??
??[2] дservlet/ValidateServlet.java??
??/*
??* ???????? 2005-8-3
??*
??* TODO ??????????????????壬?????
??* ???? ?? ?? ?? Java ?? ??????? ?? ???????
??*/
??package com;//com????????????.

import java.io.IOException;
??import java.io.PrintWriter;
??import java.util.HashMap;

import javax.servlet.ServletConfig;
??import javax.servlet.ServletContext;
??import javax.servlet.ServletException;
??import javax.servlet.http.HttpServlet;
??import javax.servlet.http.HttpServletRequest;
??import javax.servlet.http.HttpServletResponse;

/**
??* @author Administrator
??*
??* TODO ?????????????????????壬?????
??* ???? ?? ?? ?? Java ?? ??????? ?? ???????
??*/
??public class ValidateServlet extends HttpServlet {

/**
??* Constructor of the object.
??*/

private ServletContext context;
??private HashMap users = new HashMap();

public ValidateServlet() {
??super();
??}