Partage
  • Partager sur Facebook
  • Partager sur Twitter

[JSP/JSTL] Problème pour accéder aux ressources

    18 avril 2017 à 18:56:53

    Bonjour,

    Je suis tout nouveau sur J2EE et je rencontre un petit problème.

    J'ai une servlet qui est appelée lorsque l'uri est vide "/" : 

    <servlet-mapping>
          <servlet-name>RedirectProcess</servlet-name>
          <url-pattern>/</url-pattern>
    </servlet-mapping>


    Mon soucis c'est que dans ma JSP lorsque je souhaite charger un fichier css, l'url appelée est elle aussi redirigée par la servlet.

    <link rel="stylesheet" href="<crt:url value="/assets/css/style.css" />">


    Je précise que ma JSP ce trouve dans le dossier WEB-INF et que mon dossier assets n'est pas dans celui-ci.

    Que faut-il faire dans ce cas de figure ? 

    Je vous remercie d'avance pour vos réponses !



    • Partager sur Facebook
    • Partager sur Twitter
      20 avril 2017 à 12:37:15

      Personne pour m'aider .. ?
      • Partager sur Facebook
      • Partager sur Twitter
        20 avril 2017 à 13:18:34

        Salut  !

        Je ne pense pas que ce soit nécessaire de marquer la balise crt dans le value.

        Pour charger un ficher de style( css) voici la syntaxe :

        <link rel="stylesheet" href ="../assets/css/style.css"/>

        Après,il faut être sûr de ton arborescence et voir si ton css s'applique.

        Fais un test déjà comme ça. Si tonstyle ne s'applique pas, il faudra vérifier l'arborecence

        Avec url value, tu fais une redirection, or ce que tu souhaites, c'est que ta jsp charge le css.

        Si j'ai bien compris :-)

        Tiens moi au courant si tu veux

        • Partager sur Facebook
        • Partager sur Twitter
          20 avril 2017 à 15:26:10

          Oui mais le soucis c'est que, comme je le disais, lorsque le CSS va être appelé, il va finalement appeler l'url :

          http://xxxx.com/../assets/css/style.css

          Le soucis, c'est que cette URL subis l'url pattern de ma servlet et me retourne un code 200 avec comme body ma page généré par la servlet. 

          Vois-tu ce que je veux dire ? 

          • Partager sur Facebook
          • Partager sur Twitter
            20 avril 2017 à 15:32:47

            Que se passe-t-il si tu rajoute:

            <servlet-mapping>
                  <servlet-name>default</servlet-name>
                  <url-pattern>/*.css</url-pattern>
            </servlet-mapping>



            • Partager sur Facebook
            • Partager sur Twitter
              20 avril 2017 à 15:38:42

              Super florent m, c'etait exactement ça ! 

              Je te remercie :)

              • Partager sur Facebook
              • Partager sur Twitter
                20 avril 2017 à 16:02:49

                Il faut faire juste attention, ce hack ne fonctionne il me semblent que sur tomcat, en gros tomcat possède une servlet par défaut qui s’appelle default (orignal je sait).

                Edit: de plus cela se base sur la priorité des url-mapping:

                http://itdoc.hitachi.co.jp/manuals/3020/30203Y0510e/EY050165.HTM

                -
                Edité par florent m 20 avril 2017 à 16:04:25

                • Partager sur Facebook
                • Partager sur Twitter
                  20 avril 2017 à 16:28:48

                  D'accord ! 

                  Dans ce cas, j'imagine qu'il y a une bonne pratique général pour ce genre de cas non ? 

                  • Partager sur Facebook
                  • Partager sur Twitter
                    20 avril 2017 à 16:45:24

                    Sa dépend principalement de se que tu veux faire, mais je dirait qu'un filtre aurait de forte chance d'être plus approprié dans ton cas.

                    • Partager sur Facebook
                    • Partager sur Twitter
                      20 avril 2017 à 16:55:32

                      D'accord, je vais me pencher sur le sujet, je te remercie en tout cas :)
                      • Partager sur Facebook
                      • Partager sur Twitter

                      [JSP/JSTL] Problème pour accéder aux ressources

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown