Forum-webmaster
Technique - programmation => Javascript / DOM / Ajax => Message commencé par: chan_hic le le 24-05-2009 a 17:03:12

Titre: aidez moi... c urgent :)
Posté par: chan_hic le le 24-05-2009 a 17:03:12

salut,

Je developpe un "projet web" j2ee avec eclipse et je voudrais introduire ajax.. j'ai comencé a essayé un exemple (que j'ai copié depuis un site), mais il me met sur "XMLHttpRequest" XMLHttpRequest cannot be resolved to a type..
(meme cas pour ActiveXObject)
je me trouve alors avec erreur sur req.open, req.send ....

J'espere que quelqu'un aura un peu de temps pour répondre à ce "petit problème"... je sais qu'il ya qu'une petite chose que j'aurais oublier

Voilà mon code

[SIZE="4"]ajax.js[/SIZE]
[CODE]
var req;

function ajaxEngine() {
   var produit = document.stock.Produit.value;
   var url = "AServlet?Produit=" + produit;
   if (windows.XMLHttpRequest) {
      req = new XMLHttpRequest();
   }
   else {
      req = new ActiveXObject("Microsoft.XMLHTTP");
   }
   req.open("GET", url, true);
   req.onreadystatechange = callBack;
   req.send();
}

function callBack() {
   if (req.readyState == 4) {
      if (req.status == 200) {
         document.getElementById("prix").innerHTML = req.responseText;
      }
   }
}
[/CODE]

[SIZE="4"]index.html[/SIZE]
[CODE]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript" src="ajax.js"></script>
</head>
<body>

   <form name="stock">
      <input type="text" name="Produit" size="20"
         onkeyup="ajaxEngine();"
      />
      <div id="Prix"></div><br/>
   </form>
</body>
</html>
[/CODE]

[SIZE="4"]AServlet.java[/SIZE]
[CODE]

import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.HashMap;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class AServlet extends HttpServlet {
   private static final long serialVersionUID = 1L;
private HashMap<String, String> db;

public void init() throws ServletException {
   db = new HashMap<String, String>();
   db.put("Clavier", "200");
   db.put("Ecran", "1200");
   db.put("Souris", "20");
}

   protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      String produit = request.getParameter("Produit");
      String prix = db.get(produit);
      PrintWriter out = response.getWriter();
      if (prix == null) out.println("<font color='red'><b>Le produit n'existe pas</b></font>");
      else out.println("<font color='green'><b>" + prix + "</b></font>");
   }

   protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      doGet(request, response);
   }

}

[/CODE]

Titre: Re:aidez moi... c urgent :)
Posté par: Lilian le le 29-05-2009 a 11:04:12

Bonjour,

Afin d'éviter tous les problèmes possibles afférents à l'Ajax, je vous conseille d'utiliser JQuery ou un autre framework javascript qui s'occupera de le gérer à votre place.


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.