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

Tomcat et TomEE Java Discussion :

[TomCat/WebLo] Mapping web.xml


Sujet :

Tomcat et TomEE Java

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 9
    Points : 3
    Points
    3
    Par défaut [TomCat/WebLo] Mapping web.xml
    Bonjour,
    J'ai une petite question, peut-être simple, mais je n'ai pas encore retrouvé la solution...

    Je développe une WebApp de redirection, avec 2 fonctions principales : redirection (servlet) et admin (jsp).

    La servlet de redirection doit être appelé dès que l'on arrive sur la webapp.
    http://serveur/webapp/
    Et en fonction du header, elle génére un redirect sur erreur 301.

    Le web.xml correspondant est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <servlet>
    	<servlet-name>Redirecte</servlet-name>
    	<display-name>Redirecte</display-name>
    	<description>Servlet de redirection</description>
    	<servlet-class>[...package...].Servlet</servlet-class>
    	<load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    	<servlet-name>Redirecte</servlet-name>
    	<url-pattern>/*</url-pattern>
    </servlet-mapping>
    Cette partie marche nickel.

    Mon problème, j'aimerai créé un admin, en jsp, accessible sur:
    http://serveur/webapp/admin/ [index.html]
    Mais je ne sais plus comment le mapper
    Il me semble qu'il faut le mapper sur le conteneur JSP... mais pas moyen de remettre la main sur la syntaxe...

    Si on pouvait m'aiguiller
    Je poursuis sur Google.

    Cdlt.

  2. #2
    Membre éclairé Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 672
    Points
    672
    Par défaut
    Bonjour,

    Déjà il y a quelque chose qui me chagrine et que j'ai du mal à comprendre, tu as créé des servlets et tu veux utiliser des JSP aussi. Je me demande si tu sais ce qu'est une JSP car quand tu dis :
    Citation Envoyé par iamthemitch
    Mon problème, j'aimerai créé un admin, en jsp, accessible sur:
    http://serveur/webapp/admin/ [index.html]
    Il me semble que losque l'on fais des JSP, on obtient plutot un fichier avec l'extension .jsp et non .html.

    Ensuite quand tu dis :
    Citation Envoyé par iamthemitch
    Mais je ne sais plus comment le mapper
    Il me semble qu'il faut le mapper sur le conteneur JSP... mais pas moyen de remettre la main sur la syntaxe...
    Encore une fois, il me semble que les JSP n'ont ni besoin d'etre compilé ni mapper dans web.xml.
    Il vous suffit juste de placer le fichier d'extension ".jsp" sur le répertoire contenant les pages HTML du serveur Web fournit avec le serveur d'applications.

    Cordialement,

    Zorm

  3. #3
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Dans ce cas, je pense que tu n'as pas compris ce qu'était une webapp...
    Citation Envoyé par zorm
    Il me semble que losque l'on fais des JSP, on obtient plutot un fichier avec l'extension .jsp et non .html.
    Je sais bien que index.html n'a rien d'une jsp, c'était un exemple de nom pour la page d'accueil... si ta page d'accueil est juste un frameset, t'as pas besoin de lui mettre .jsp ...

    Je récapépète:
    - un utilisateur lamba tape http://domaine/application, au niveau DNS, cette adresse est dirigée vers un Apache.
    - l'Apache fait un rewrite, et envoie la requête sur ma webapp. Il ne connait que le nom de la webapp. Pas de page, ni de servlet, nada. Donc : http://serveur1/webapp/
    - là, la webapp doit entrer en action... donc il faut mapper /* sur la webapp, sinon, rien ne va se produire ! La webapp mouline son truc, et répond avec un code 301, avec la Location qui va être adapté : http://serveurX/application/vY/

    Ca, c'est le mode "proxy".

    Mais on a besoin d'un mode "admin" pour administrer cette servlet, que j'aurai aimé être accessible par http://serveur1/webapp/admin/
    Citation Envoyé par zorm
    Il vous suffit juste de placer le fichier d'extension ".jsp" sur le répertoire contenant les pages HTML du serveur Web fournit avec le serveur d'applications.
    Si tu as bien lu et interprété ce que j'ai dit plus haut... /* est mappé sur la servlet... donc si tu appelles http://serveur1/webapp/admin/ ou http://serveur1/webapp/admin/index.html (ou jsp pour te faire plaisir), et bien ça rentre dans le cadre du /*, et tu vas être dirigé directement sur la servlet, qui va mouliner, et te répondre un 301...
    Donc en gros, tu n'arrives jamais sur la page d'admin.

    D'où ma question, pour ajouter un mapping sur /admin/* et le mapper sur l'interpréteur JSP par défaut... dont je ne retrouve plus le nom...

    C'est pas bien compliqué non...

  4. #4
    Membre éclairé Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 672
    Points
    672
    Par défaut
    Effectivement, je n'avais pas du tout compris ton probleme et je ne peux rien pour toi.
    Je n'ai aucune idée quant aux solutions à ton probleme.
    J'en viens donc à en conclure que
    Citation Envoyé par iamthemitch
    C'est pas bien compliqué non...
    SI, c'est compliqué.

    Désolé

  5. #5
    Membre éprouvé
    Avatar de yolepro
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Points : 1 144
    Points
    1 144
    Par défaut
    Et pourquoi tu ne vérifies pas directement dans ta servlet le chemin appelé?

    Si admin appelé alors je redirige vers la page de login ?

    PS : a partir du moment ou tu fais ton moteur de maniere applicative, il faut le faire jusqu'au bout
    Etre c'est etre relatif.

  6. #6
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par yolepro
    Et pourquoi tu ne vérifies pas directement dans ta servlet le chemin appelé?
    Ben ca, je veux bien... la vérification du chemin appelé permettant la bonne redirection pour le reste... mais pour l'admin... ca va se manger la queue ?
    http://serveur1/webapp/admin/ => match /* => http://serveur1/webapp/admin/
    http://serveur1/webapp/admin/ => match /* => http://serveur1/webapp/admin/
    ...

    Citation Envoyé par yolepro
    PS : a partir du moment ou tu fais ton moteur de maniere applicative, il faut le faire jusqu'au bout
    ... nannnnnn !!! j'veux pas le faire sur la servlet, lol... pour 4 pages de formulaires, je préfererai du jsp tout con...

    Sinon, la solution sous le bras, c'est de faire une deuxieme webapp pour l'admin. Mais honnetement, je préfèrerai tout avoir sur la même...

  7. #7
    Membre éprouvé
    Avatar de yolepro
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Points : 1 144
    Points
    1 144
    Par défaut
    Pourquoi veux tu que cela se morde la queue ?

    Il faut différencier un appel d'URL faite par le client et un forward dans ta servlet.

    Il n'y a pas de raison que le forward vers la JSP de login dans ta servlet ne fonctionne pas.
    Etre c'est etre relatif.

Discussions similaires

  1. [ Tomcat ] [ débutant ] config web.xml
    Par TeTram dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 09/02/2009, 10h22
  2. [Tomcat]probleme avec web.xml
    Par The_freeman dans le forum Tomcat et TomEE
    Réponses: 6
    Dernier message: 25/01/2006, 22h32
  3. [Tomcat] Application et web.xml
    Par guignol dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 29/06/2005, 12h07
  4. [ debutant ][ Tomcat ] Erreurs fichier web.xml
    Par zsoh dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 13/04/2005, 11h35
  5. [Tomcat] Problème avec web.xml
    Par hichamus dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 01/03/2005, 16h57

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