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

Servlets/JSP Java Discussion :

Mapper une servlet à un fichier inclus


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur
    Inscrit en
    Décembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 96
    Par défaut Mapper une servlet à un fichier inclus
    Bonjour

    J'ai dans mon application un fichier qui est inclus dans chaque page et qui permet à l'utilisateur de se logger ou deconnecter à la volée (comme sur ce forum).

    Le log et géré par un servlet.
    Comment faire pour mapper le formulaire inclus dans le fichier à cette servlet particulière ?

    voici le fichier en question (WEB-INF/log.jspx):
    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
    <?xml version="1.0" encoding="UTF-8" ?>
    <jsp:root version="2.0"
    		xmlns:jsp="http://java.sun.com/JSP/Page"
    		xmlns:c="http://java.sun.com/jsp/jstl/core">
    	<div>
    		<form name="fLog" method="post" action=".">
    			<c:choose>
    				<c:when test="">
    					<span>Username:</span>
    					<input type="text" name="itUserName" /><br />
    					<span>Password:</span>
    					<input type="password" id="ipLogPswd" name="ipPassword" value="*****"
    							onfocus="document.getElementById('ipLogPswd').value = '';" /><br />
    					<input type="submit" name="isLog" value="Log in" />
    				</c:when>
    				<c:otherwise>
    					<span>Username:</span>
    					<c:out value=""></c:out><br />
    					<input type="submit" name="isUnlog" value="Log out" />
    				</c:otherwise>
    			</c:choose>
    		</form>
    	</div>
    </jsp:root>
    Il y a probablement des erreurs car je l'ai écrit sans rien tester.

    En fait je voudrais que la méthode doPost() de ma servlet ne s'execute que si et seulement si un des deux boutons ici et cliqué, quelque soit ce qu'il y a dans la page principale.

    Autre question: comment puis-je identifier dans l'objet HttpServletRequest le bouton qui a soumis le formulaire ? est-ce qu'il faut passer par un champs hidden ou on peux l'avoir directement.

    Merci
    Rémi

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    pour la servlet, il suffit de faire pointer le 'action' du formulaire vers l'url de la servlet.

    Le bouton cliqué fera partie des données soumise lors du POST, contrairement aux autres bouton. tester sa présence dans la liste des paramètres de la requete suffit à confirmer qu'il a été utilisé. La valeur soumise quand à elle, dépend du navigateur.

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur
    Inscrit en
    Décembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 96
    Par défaut
    OK

    Merci pour les précisions.
    Le probleme c'est que ça implique que la servlet sera également appelé si d'autres formulaires envoie sur la même page. non ? Ici la servlet peut être appelée depuis n'importe quelle page puisque le fichier est inclus dans toutes les pages.
    Le formulaire renvoie par ailleurs l'utilisateur systématiquement sur la page courante (connexion à la volée).

    Est-ce que cela signifie que ma servlet sera systématiquement appelé lors d'un post quel que soit le formulaire qui fait la demande ?

    Si oui, quel mapping adopter ? * ?
    et comment connaitre le nom du formulaire emetteur ? est-ce qu'il suffit également de tester sa présence dans les parametres du post (sinon je peux toujours l'avoir par le bouton) ?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    la servlet ne sera appelée que lorsque le formulaire de login sera soumis. C'est d'ailleurs le but. Pour rediriger après le login sur la page où se trouvait le formulaire, tu peux utiliser le refere, présent dans les entete http du browser. Pour le mapping, tu met ce que tu veux.

  5. #5
    Membre confirmé
    Homme Profil pro
    Ingénieur
    Inscrit en
    Décembre 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 96
    Par défaut
    ohhh j'ai compris !

    C'est tout de même bien fait !

    Merci
    @+

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Avril 2008
    Messages : 74
    Par défaut
    si vous voulez vous pouvez passer les parametres par le meme formulaire, il faut juste mettre les bouton dans la meme forme et tester sur les noms de ces bouton, bon courage

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mapper une classe/un fichier .java
    Par False dans le forum Hibernate
    Réponses: 1
    Dernier message: 23/07/2009, 15h34
  2. Réponses: 2
    Dernier message: 15/02/2006, 17h35
  3. [Upload]Telechargement grâce à une servlet : nom du fichier
    Par xtremax3 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 23/11/2005, 22h25
  4. [SERVLET]Appel d'un fichier à partir d'une servlet
    Par fchafia dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 17/03/2005, 12h21
  5. [Tomcat]Droit d'accès aux fichiers créés par une servlet
    Par loulouleboss dans le forum Tomcat et TomEE
    Réponses: 7
    Dernier message: 15/07/2004, 14h32

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