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

Spring Web Java Discussion :

Spring MVC : imports statiques [MVC]


Sujet :

Spring Web Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Etudiant Java
    Inscrit en
    Octobre 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant Java

    Informations forums :
    Inscription : Octobre 2011
    Messages : 15
    Par défaut Spring MVC : imports statiques
    Bonjour tout le monde,

    Je rencontre un problème concernant l'import statique de ressources (css, javascript...) dans une jsp, dans le cadre d'une application Web utilisant Spring. chaque que je tente d'importer un css ou javascript, je me retrouve face à une erreur 400.
    J'ai cherché un peu partout sur Internet les solutions, mais toujours en vain

    Est-ce que quelqu'un aurait une solution qui marche à m'apporter ? Merci beaucoup !


    Voici mes sources, si jamais ça peut aider

    web.xml
    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
     
    <web-app version="2.5" 
    		 xmlns="http://java.sun.com/xml/ns/javaee" 
    		 xmlns:c="http://java.sun.com/jsp/jstl/core" 
    		 xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    		 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    		 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    		 					 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
     
    	<!-- servlets -->
    	<servlet>
    		<servlet-name>spring-mvc</servlet-name>
    		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    		<load-on-startup>1</load-on-startup>
    	</servlet>
     
    	<!-- mappings -->
    	<servlet-mapping>
    		<servlet-name>spring-mvc</servlet-name>
    		<url-pattern>/</url-pattern>
    	</servlet-mapping>
    </web-app>
    spring-mvc-servlet.xml
    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
    25
    26
    27
     
    <?xml version="1.0" encoding="UTF-8"?>
     
    <beans xmlns="http://www.springframework.org/schema/beans" 
    	   xmlns:beans="http://www.springframework.org/schema/beans" 
    	   xmlns:context="http://www.springframework.org/schema/context" 
    	   xmlns:mvc="http://www.springframework.org/schema/mvc" 
    	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    	   xsi:schemaLocation="http://www.springframework.org/schema/beans 
    						   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
    						   http://www.springframework.org/schema/context 
    						   http://www.springframework.org/schema/context/spring-context-3.0.xsd 
    						   http://www.springframework.org/schema/mvc 
    						   http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
     
    	<context:annotation-config />
    	<context:component-scan base-package="fr.perso.spring_mvc" />
     
    	<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
     
    	<bean id="handlerMapping" class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
     
    	<bean id="viewsResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix" value="/views/" />
    		<property name="suffix" value=".jsp" />
    	</bean>
    </beans>
    HomeController.java
    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
     
    package fr.perso.spring_mvc.controller;
     
    import org.springframework.stereotype.Controller;
     
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
     
    import org.springframework.ui.ModelMap;
     
    @Controller
    @RequestMapping("/")
    public class HomeController {
     
    	@RequestMapping(method = RequestMethod.GET)
    	public String httpGet(ModelMap model) {
     
    		model.addAttribute("title", "Home");
     
    		return "home";
    	}
    }
    home.jsp
    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
     
    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" %>
     
    <!DOCTYPE html>
     
    <html>
    	<head>
    		<title>${title}</title>
     
    		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     
    		<!-- css -->
    		<link rel="stylesheet" type="text/css" href="/static/css/styles.css" />
    	</head>
     
    	<body>
    		<p>ce texte doit être en rouge</p>
    	</body>
    </html>
    styles.css
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    @CHARSET "utf-8";
     
    p {
    	color: red;
    }

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    ne manquerait-il pas des <mvc:resources …> dans votre servlet.xml ?

  3. #3
    Membre averti
    Homme Profil pro
    Etudiant Java
    Inscrit en
    Octobre 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant Java

    Informations forums :
    Inscription : Octobre 2011
    Messages : 15
    Par défaut
    C'est justement une des solutions que j'ai essayé, j'avais mis ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <mvc:resources mapping="/static/**" location="/static/" />
    Mais le résultat est la même, une erreur 400

    L'autre solution consistait à bidouiller un peu le fichier web.xml, mais j'ai pas réussi à reproduire tout ça.

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <mvc:resources mapping="/static/**" location="classpath:/static/" />
    ?

  5. #5
    Membre averti
    Homme Profil pro
    Etudiant Java
    Inscrit en
    Octobre 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant Java

    Informations forums :
    Inscription : Octobre 2011
    Messages : 15
    Par défaut
    mmh pas essayé de le mettre dans le classpath, je teste ça ce soir et je vous informerai.

    encore merci !

    EDIT : ça ne fonctionne pas non plus

  6. #6
    Membre averti
    Homme Profil pro
    Etudiant Java
    Inscrit en
    Octobre 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant Java

    Informations forums :
    Inscription : Octobre 2011
    Messages : 15
    Par défaut
    Bon... J'ai trouvé une solution qui marche mais elle est très moche, je suis quand même preneur de solutions plus conventionnelles !

    J'ai utilisé cette forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <style type="text/css">
        <%@ include file="../static/css/styles.css" %>
    </style>

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

Discussions similaires

  1. [Spring MVC] Récupérer des valeurs de formulaires sur n pages
    Par ran_hery dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 07/04/2006, 07h23
  2. Réponses: 2
    Dernier message: 16/02/2006, 10h29
  3. [Spring MVC][Validator] Ne stop pas si il y a une erreurs
    Par Hikage dans le forum Spring Web
    Réponses: 3
    Dernier message: 15/02/2006, 09h43
  4. [Débat] Spring MVC versus Struts
    Par alheim dans le forum Frameworks Web
    Réponses: 6
    Dernier message: 19/12/2005, 10h13
  5. [Spring MVC] Formulaire dynamique
    Par partyboy dans le forum Spring Web
    Réponses: 7
    Dernier message: 17/10/2005, 10h52

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