IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Web en Java Discussion :

comment utiliser ajax dans un projet web ?


Sujet :

Développement Web en Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 9
    Points : 8
    Points
    8
    Par défaut comment utiliser ajax dans un projet web ?
    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

    ajax.js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    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;
    		}
    	}
    }
    index.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    <!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>
    AServlet.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    36
    37
     
     
    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);
    	}
     
    }

  2. #2
    Membre confirmé

    Inscrit en
    Juin 2005
    Messages
    1 155
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 1 155
    Points : 475
    Points
    475
    Par défaut
    y'a un framework qui simplifie énormement l'integration d'ajax.
    Direct Web Remoting ça s'appel.
    Bonne chance.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 511
    Points : 386
    Points
    386
    Par défaut
    Pistes à suivre:
    Ajoute des alert() dans ton js pour voir ou ça bug,
    des systemOut.PprintLn("vv") dans ta servlet pour voir si au moins elle est appelée.
    Change ton get en post sur la rqte ajax.

Discussions similaires

  1. Utilisation Log4j dans les projets web
    Par RHmed dans le forum Développement Web en Java
    Réponses: 6
    Dernier message: 10/04/2013, 11h15
  2. Utiliser Gdata dans un projet Web Google App Engine
    Par Kevinou974 dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 23/04/2010, 13h25
  3. Utilisation des fonctionnalités AJAX dans un projet web
    Par stefsas dans le forum ASP.NET Ajax
    Réponses: 5
    Dernier message: 08/04/2010, 08h19
  4. Réponses: 1
    Dernier message: 20/01/2009, 14h31
  5. Réponses: 10
    Dernier message: 12/12/2006, 01h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo