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 :

réflexion sur redirection JSP


Sujet :

Servlets/JSP Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    349
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 349
    Points : 133
    Points
    133
    Par défaut réflexion sur redirection JSP
    Bonjour,

    De nouveau moi avec une question insolite.

    J'arrive à faire des redirections en JSP mais bien que celles-ci fonctionnent l'url affiché est le nom de page qui a permis la redirection et non le nom de la page de destination. Normal ? On peut contourner le "problème" ? Quel est le danger ?

    Cordialement,

    hpl76

  2. #2
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    c'est là toute la différence entre le forward et le redirect. T'as probablement fait un forward interne au serveur, le client n'en est alors pas au courant. Si tu veux changer l'url, faut faire un redirect, c'est à dire demander au client de refaire une connection sur une nouvelle url.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    349
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 349
    Points : 133
    Points
    133
    Par défaut
    Bonjour et merci de t'intéresser à mon problème.

    J'ai en effet fait un : <jsp:forward page="mapage.jsp" />

    Je ne connaissais que cet syntaxe pour la redirection et j'apprends qu'il y a en fait 2 cas de figure (MERCI je me coucherai moins bête ce soir). Pour mon cas, c'est donc plus le redirect qu'il me faut : cas classique, je poste les login et mot de passe saisies vers une page qui vérifie le couple dans ma bdd et ensuite je redirige en fonction.

    Si tu as un peu de temps peux-tu m'expliquer la nuance et surtout la finalité et dans quel ou quel cas il faut utiliser l'un ou l'autre. Je ne suis pas réticent au monde JAVA bien que tout ne me semble pas intuitif mais quand on s'enferme dans un langage PHP et qu'on développe en procédural c'est pas toujours facile

    hpl76

  4. #4
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Le forward est interne. Un cas typique d'utilisation est le suivant:

    on "poste" vers un servlet (exemple server/webapp/maservlet). Suivant ce qui a été posté ou non, la servlet effectue un travaille (manipulation de la db ou autre) et ensuite, décide d'utiliser une page jsp comme "vue". Suivant le travail effectué elle choisira l'une ou l'autre jsp. Mais on veux que l'utilisateur ne voie pas la jsp et utilise tout le temps la servlet -> on utilise un forward.

    Un autre cas, c'est celui où l'on veux passer de a.jsp à b.jsp tout en gardant le contexte de la requete. On va alors faire un forward qui permet de garder tout ce contexte.

    A l'opposé, lorsque l'on veux que le browser refasse une demande ailleurs, on lui envoie un redirect. Donc là, visible.

  5. #5
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    En gros, tu as (côté serveur) 3 possibilités :

    - <jsp:forward>
    - <jsp:include>
    - <% response.sendRedirect("/chemin/vers/la/page.jsp"); %>

    Avec les 2 premiers, ça ne change pas la barre d'url du navigateur
    Avec le dernier, si

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    349
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 349
    Points : 133
    Points
    133
    Par défaut
    PERFECT MERCI CA MARCHE NICKEL !!!

    j'ai plus pour le moment qu'à régler mon problème de session et c'est bon


  7. #7
    En attente de confirmation mail

    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 766
    Points : 1 267
    Points
    1 267
    Par défaut
    Il y a aussi avec JSTL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <c:redirect url="http://www.developpez.com"/>
    Citation Envoyé par hpl76 Voir le message
    j'ai plus pour le moment qu'à régler mon problème de session et c'est bon

    Passe toi de session, et t'auras résolu le problème (j'vais commencer à me faire petit, je l'ai déjà sorti deux fois aujourd'hui).

    Je ne suis par contre pas sûr que forward et redirect redirignet également les éventuels headers Authorization, ni même les cookies.

  8. #8
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Citation Envoyé par nicorama Voir le message
    Je ne suis par contre pas sûr que forward et redirect redirignet également les éventuels headers Authorization, ni même les cookies.
    Le forward garde tout, puisque l'on reste dans la même requete. Les headers d'autorisation sont systématiquement envoyé par le browser quand on est en basic auth. Quand au cookies, les browser les envoie systématiquement à chaque requete. donc tout çà ne devrais pas poser de problème en cas de redirect. La seule chose qui puisse être perdue par certains browsers lors du redirect, ce sont les données soumises via POST.

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

Discussions similaires

  1. Servlet et redirection sur une JSP via une URI
    Par xenoise dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 25/05/2012, 11h49
  2. Réflexion sur les INDEX ... !!! ??? !!!
    Par snoopy69 dans le forum Oracle
    Réponses: 4
    Dernier message: 22/09/2005, 16h58
  3. [struts]plusieurs actions sur 1 JSP sans DispatchAction
    Par Le Marlou dans le forum Servlets/JSP
    Réponses: 15
    Dernier message: 23/03/2005, 15h10
  4. [Java 5] Réflexion sur les énumérations type-safe
    Par rozwel dans le forum Langage
    Réponses: 5
    Dernier message: 04/12/2004, 21h34
  5. [debutant]renvoyer sur une jsp depuis une servlet
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 23/03/2004, 12h55

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