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

Struts 1 Java Discussion :

Erreur 404 sur forward


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 26
    Par défaut Erreur 404 sur forward
    Bonjour,

    j'ai un soucis, et je ne trouve rien qui m'éclaire sur google

    Je tente de faire une redirection vers un jsp, dans ma class action.

    j'ai déclaré dans mon fichier struts-config.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
             <global-forwards>
             <forward name="mainmenu" path="/mainmenu.jsp" redirect="true">
             </forward>
             </global-forwards>
    dans ma classe action:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public ActionForward execute(ActionMapping mapping,
                            ActionForm form,
                            HttpServletRequest request,
                            HttpServletResponse response)
            {
     
                    System.out.println("execute lance");
     
                    return (mapping.findForward("mainmenu"));
     
            }
    à l'exécution, j'ai bien dans la console, le message "execute lance" qui
    s'affiche. et le mapping forward me retourne à l'affichage (dans le
    navigateur) cela :
    Etat HTTP 404 - /Tuto/mainmenu.jsp
    message /Tuto/mainmenu.jsp

    description La ressource demand�e (/Tuto/mainmenu.jsp) n'est pas
    disponible.
    et l'url dans le navigateur est bien :
    http://localhost:8080/Tuto/mainmenu.jsp (logique car j'ai placé redirect
    à true).


    mainmenu.jsp est au même endroit que index.jsp dans l'arborescence, qui
    lui s'affiche parfaitement. Si je change web.xml pour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     <welcome-file-list>
      <welcome-file>/WEB-INF/mainmenu.jsp</welcome-file>
     </welcome-file-list>
    sans rien changer d'autre, j'ai directement l'affichage de mainmenu.

    j'ai peut etre un truc bizarre avec le contexte mais je dois avouer que je suis perdu, si vous pouvez m'eclairer cela serait super; d'autant plus que je ne suis pas super à l'aise avec la notion de contexte sous struts

  2. #2
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Comme tu as mis ta jsp sous WEB-INF, il faut le spécifier dans le path :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
             <global-forwards>
             <forward name="mainmenu" path="/WEB-INF/mainmenu.jsp" redirect="true">
             </forward>
             </global-forwards>

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 26
    Par défaut
    Bonjour, deja, merci pour ta réponse . j'ai modifié mon fichier struts-config.xml comme suit (suivant ton conseil) et malheureusement cela ne fonctionne toujours pas :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <global-forwards>
     
    <forward name="mainmenu" path="/WEB-INF/mainmenu.jsp"  redirect="true">
    </forward>
     
    </global-forwards>
    et voila le résultat :

    Url dans le navigateur :

    http://localhost:8080/Tuto/WEB-INF/mainmenu.jsp

    et voila ce qu'affiche le navigateur :
    Etat HTTP 404 -

    type Rapport d'�tat

    message

    description La ressource demand�e () n'est pas disponible.
    JBoss Web/2.1.1.CR7


    est ce que cela pourrait venir de tomcat ?

  4. #4
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    WEB-INF est un répertoire protégé.
    Tu ne peux pas accèder à une jsp présente sous WEB-INF directement via l'url.
    A partir du moment où tu mets ta jsp sous WEB-INF, tu ne peux y accèder que par l'intermédiaire d'une Action.
    Donc, via l'url, il faut faire appel à l'Action qui fait le forward vers /WEB-INF/mainmenu.jsp :
    http://localhost:8080/Tuto/pathDeTonAction.do

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 26
    Par défaut
    euh je ne cherche pas à y accéder directement en tapant l'url, mais à y accéder sur un findForward("mainmenu") ( cf ma classe action)

    cela dit merci beaucoup, tu viens de répondre à une interrogation que j'avais laissé de coté

    mais je reste bloqué sur mon findForward("mainmenu") exécuté dans ma classe action


    ps: merci pour les balises de mises en forme

  6. #6
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Peux-tu montrer le code complet du struts-config.xml ?
    Peux-tu aussi préciser la version de Struts que tu utilises ?

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

Discussions similaires

  1. [IIS6] Erreur 404 sur les scripts asp
    Par Maximil ian dans le forum IIS
    Réponses: 2
    Dernier message: 06/07/2007, 11h38
  2. Réponses: 1
    Dernier message: 05/02/2007, 13h27
  3. erreur 404 sur serveur tomcat
    Par sg.forums dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 30/10/2006, 13h16
  4. erreur 404 sur serveur tomcat
    Par sg.forums dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 27/10/2006, 11h11

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