注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 在局域网内开辟一个属于自..
 帮助

原来应该把类型设置为xml啊


2008-07-28 00:42:57
 标签:ajax servlet j2ee   [推送到技术圈]

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://neeke.blog.51cto.com/435241/89872
刚刚在写一个ajax+Servlet验证表单的东东,数据传到Servlet里面了,但是就是不返回数据。。。。我就奇怪了,怎么回事呢?
ajax部分代码:
function validate(){
    createXMLHttpRequest();
    var username = document.getElementById("username").value;
    var url = "TestAjax?username="+username;
    xmlHttp.onreadystatechange = callback;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
  }
  
  function callback()
  {
      if(xmlHttp.readyState == 4)
      {
    if(xmlHttp.status == 200)
    {
        var msg = xmlHttp.responseXML.getElementsByTagName("result")[0].firstChild.data;
        setMessage(msg);
    }
      }
  }
Servlet部分代码:
public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
  request.setCharacterEncoding("GBK");
  response.setContentType("text/xml");
  response.setHeader("Cache-Control", "no-cache");
  PrintWriter out = response.getWriter();
  String uname = request.getParameter("username").trim();
  System.out.println(uname);
  if(uname.equals("neeke"))
  {
      out.println("<result>welcome to you!</result>");
  }else
  {
      out.println("<result>login false!</result>");
  }
  out.close();
  
    }

找了半天原因才发现原来是文件类型写错了,这里response.setContentType("text/html")改成response.setContentType("text/xml")搞定了。
本文来源于:尼克技术博客 http://www.ineeke.cn/ , 原文地址:http://www.ineeke.cn/archives/ajax-servlet-duqu-xml/

 

本文出自 “尼克技术博客” 博客,请务必保留此出处http://neeke.blog.51cto.com/435241/89872





    文章评论
 
2008-08-06 11:10:37
不错的东东,回去自己试一下!

 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: