Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1390 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [resolue] impossible d'afficher des images sur un spring MVC

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[resolue] impossible d'afficher des images sur un spring MVC

n°2121743
sliders_al​pha
Posté le 17-01-2012 à 01:21:52  profilanswer
 

[solution sur le post #15 de la page 1]
plop,
 
je voudrais faire un site qui utilise SPRING en MVC et comme le titre l'indique je n'arrive pas a afficher d'image.
j'ai tester les 2 premiere page de google, rien ne marche ><
 
actuellement j'ai rajouter a mon dispatcher

Code :
  1. <mvc:annotation-driven />
  2. <mvc:resources location="/images/" mapping="/images/**" />


 
et dans index.html j'ai mis :

Code :
  1. <img src="<c:url value="/resources/img/image.jpg" />" />


 
voyez par vous meme :
http://img546.imageshack.us/img546/1059/arbo.jpg
 
Web.xml

Code :
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ [...] .xsd&#034; id="WebApp_ID" version="2.5">
  3.   <display-name>SpringTestMVC</display-name>
  4.  
  5.   <welcome-file-list>
  6.     <welcome-file>index.html</welcome-file>
  7.   </welcome-file-list>
  8.   <servlet>
  9.     <servlet-name>Spring MVC DispatcherServlet</servlet-name>
  10.     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  11.     <init-param>
  12.       <param-name>contextConfigLocation</param-name>
  13.       <param-value>
  14.    /WEB-INF/servlet-context.xml
  15.   </param-value>
  16.     </init-param>
  17.     <load-on-startup>1</load-on-startup>
  18.   </servlet>
  19.  
  20.   <servlet-mapping>
  21.     <servlet-name>Spring MVC DispatcherServlet</servlet-name>
  22.     <url-pattern>/url/*</url-pattern>
  23.      
  24.   </servlet-mapping>
  25.    
  26.    
  27. </web-app>


 
servlet-context.xml

Code :
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:mvc="http://www.springframework.org/schema/mvc"
  6. xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/sch [...] vc-3.0.xsd
  7.  http://www.springframework.org/schema/beans http://www.springframework.org/sch [...] ns-3.0.xsd
  8.  http://www.springframework.org/schema/context http://www.springframework.org/sch [...] &#034;&gt;
  9. <mvc:annotation-driven />
  10. <mvc:resources location="/images/" mapping="/images/**" />
  11.  
  12. <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
  13.  <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
  14.  <property name="prefix">
  15.   <value>/WEB-INF/jsp/</value>
  16.  </property>
  17.  <property name="suffix">
  18.   <value>.jsp</value>
  19.  </property>
  20. </bean>  
  21.  
  22. <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean" />
  23.  
  24. </beans>


 
index.html

Code :
  1. <!DOCTYPE html>
  2. <html>
  3.     <head>
  4.         <!-- En-tête de la page -->
  5.         <meta charset="utf-8" />
  6.         <title>Projet J2EE index</title>
  7.     </head>
  8.     <body>
  9.         <!-- Corps de la page -->
  10.         <!-- barre de navigation -->
  11.         <p><a href="index.html">Projet J2EE</a></p>
  12.         <p><a href="http://www.siteduzero.com">Livres</a> <a href="http://www.siteduzero.com">Revues</a> <a href="http://www.siteduzero.com">CDs</a> <a href="http://www.siteduzero.com">CDROMs</a> <a href="http://www.siteduzero.com">Clients</a></p>
  13.         <!-- bloc principal -->
  14.          <!-- barre de gauche -->
  15.          <p>Ajouter du contenue</p>
  16.          <p>Louer du contenue</p>
  17.          <p>Restituer du contenue</p>
  18.          <!-- bloc milieu -->
  19.        
  20.          <img src="<c:url value="/resources/img/image.jpg" />" />
  21.        
  22.          <p>Bienvenue sur le votre espace de gestion, cet interface vous permet de rajouter des client ainsi que du contenue,
  23.          et de louer ou reprendre du contenue</p>
  24.          <p>Utilisez la barre de navigation en haut de votre fenetre pour acceder a ces services</p>
  25.          <!-- barre de droite -->
  26.          <p>Ici se trouve votre historique des 10 dernieres operation et vous permet de les annuler rapidement en cas d'erreur</p>
  27.     </body>
  28. </html>


 
j'utilise Spring 3.0.5
 
des idées?
merci =D


Message édité par sliders_alpha le 19-01-2012 à 23:43:02
mood
Publicité
Posté le 17-01-2012 à 01:21:52  profilanswer
 

n°2121759
brisssou
8-/
Posté le 17-01-2012 à 09:12:37  profilanswer
 

Code :
  1. <mvc:resources location="/images/" mapping="/images/**" />

?
plutôt

Code :
  1. <mvc:resources location="/resources/img/" mapping="/images/**" />


 
et donc

Code :
  1. <img src="<c:url value="/images/image.jpg" />" />


 
non ?


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°2121953
sliders_al​pha
Posté le 17-01-2012 à 22:56:06  profilanswer
 

oups, une erreur de copier/coller (j'avais esseyer plusieur endroit)
neanmoins apres modif, ça ne marche toujours pas :/

n°2121955
brisssou
8-/
Posté le 17-01-2012 à 23:12:22  profilanswer
 

et avec :

Code :
  1. <c:set var="rootUrl" value="${pageContext.request.contextPath}"/>
  2. <img src="${rootUrl}/images/image.jpg" />


 
t'as regardé le html généré, histoire de voir si ça pointe où tu l'attends ?


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°2121966
sliders_al​pha
Posté le 18-01-2012 à 07:07:37  profilanswer
 

oui a chaque fois l'HTML genéré contient  

Code :
  1. <img src="<c:url value="/images/image.jpg" />" />


ou  

Code :
  1. <c:set var="rootUrl" value="${pageContext.request.contextPath}"/>
  2. <img src="${rootUrl}/images/image.jpg" />

 
dans le deuxiemme cas.
 
j'ai plusieurs idée du problemme :
c:set n'est pas reconnu (eclipse me le dit a sa gauche avec un /!\)
 
ça ne serait pas car la page est de type html et il faudrais qu'elle soit de type jsp?
 
ou bien car la page n'a pas de controlleur?
mais je n'ai jamais vu dans un MVC la page index ayant un controlleur, dans tous mes cours, la page index est juste une page html qui renvoi ensuite sur le controlleur d'autre page.
 
=====
j'ai esseyer de passer la page en jsp
et j'ai "javax.servlet.servletException" cannot be resolved as a type que lka ligne c:url
et "javax.servlet.jsp.jspservletException sur la deuxiemme
 

Code :
  1. <%@page contentType="text/html;charset=UTF-8"%>
  2. <%@page pageEncoding="UTF-8"%>
  3. <%@ page session="false" %>
  4. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  5. <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
  6. <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
  7. <html>
  8.     <head>
  9.         <!-- En-tête de la page -->
  10.         <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  11.         <title>Projet J2EE index</title>
  12.     </head>
  13.     <body>
  14.         <!-- Corps de la page -->
  15.         <!-- barre de navigation -->
  16.         <p><a href="index.html">Projet J2EE</a></p>
  17.         <p><a href="http://www.siteduzero.com">Livres</a> <a href="http://www.siteduzero.com">Revues</a> <a href="http://www.siteduzero.com">CDs</a> <a href="http://www.siteduzero.com">CDROMs</a> <a href="http://www.siteduzero.com">Clients</a></p>
  18.         <!-- bloc principal -->
  19.          <!-- barre de gauche -->
  20.          <p>Ajouter du contenue</p>
  21.          <p>Louer du contenue</p>
  22.          <p>Restituer du contenue</p>
  23.          <!-- bloc milieu -->
  24.        
  25.          <c:set var="rootUrl" value="${pageContext.request.contextPath}"/>
  26.   <img src="${rootUrl}/images/image.jpg" />
  27.        
  28.          <p>Bienvenue sur le votre espace de gestion, cet interface vous permet de rajouter des client ainsi que du contenue,
  29.          et de louer ou reprendre du contenue</p>
  30.          <p>Utilisez la barre de navigation en haut de votre fenetre pour acceder a ces services</p>
  31.          <!-- barre de droite -->
  32.          <p>Ici se trouve votre historique des 10 dernieres operation et vous permet de les annuler rapidement en cas d'erreur</p>
  33.     </body>
  34. </html>


Message édité par sliders_alpha le 18-01-2012 à 07:12:35
n°2121978
brisssou
8-/
Posté le 18-01-2012 à 08:53:07  profilanswer
 

c'est un projet maven ?
t'as ajouté les jstl dans tes dépendances ?

 

t'as linkés les tld en cas d'application J2EE <2.4 ? (regarde ici : http://www.abbeyworkshop.com/howto [...] index.html )

 

y a aussi une instruction à mettre en en-tête de (toutes les) page pour les webapp <2.3 :
<%@ page isELIgnored="false" %>


Message édité par brisssou le 18-01-2012 à 09:04:41

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°2122048
sliders_al​pha
Posté le 18-01-2012 à 13:07:57  profilanswer
 

Citation :


c'est un projet maven ?


 
jamais entendu parler =o
 

Citation :


t'as ajouté les jstl dans tes dépendances ?  


 
non, dans mon cours on ne fait pas ça, j'ai googeliser et donc apparament je devrais rajouter un fichier pom.xml et mettre 4blocs a l'interieur.
 

Citation :


t'as linkés les tld en cas d'application J2EE <2.4 ? (regarde ici : http://www.abbeyworkshop.com/howto [...] index.html )


Normalement oui, j'ai fait la meme chose que sur cette video, la creation de projet automatique s'occupe de tout.
http://www.youtube.com/watch?v=3a6ZQ4RmMzc
et j'ai verifier j'ai bien un xml schema lié au web.xml donc forcement un 2.4
 
je testerais ça ce soir

n°2122057
brisssou
8-/
Posté le 18-01-2012 à 13:52:40  profilanswer
 

oui, mais si tu mets pas le jar des jstl dans ton war, tu n'auras rien pour les évaluer


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°2122172
sliders_al​pha
Posté le 18-01-2012 à 20:39:51  profilanswer
 

donc donc, je n'utilise pas maven et je n'ai donc pas de fichier pom.xml donc pas de dependance a injecter.
 
j'ai ajouter tout les .jar du dossier lib dans les java buldpath

Citation :


Now all all the libraries to "Java Build Path". Right click on your project explorer and then select properties. Then select "Java Build Path" --> Libraries and then click on the "Add JARs" button. And add all the libraries to Java Build Path.


 
et maintenant j'ai une erreur 404 sur http://localhost:8080/SpringTestMVC/index.jsp
 
au final actuellement j'ai
 
web.xml

Code :
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ [...] .xsd&#034; id="WebApp_ID" version="2.5">
  3.   <display-name>SpringTestMVC</display-name>
  4.  
  5.   <welcome-file-list>
  6.     <welcome-file>index.jsp</welcome-file>
  7.   </welcome-file-list>
  8.   <servlet>
  9.     <servlet-name>Spring MVC DispatcherServlet</servlet-name>
  10.     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  11.     <init-param>
  12.       <param-name>contextConfigLocation</param-name>
  13.       <param-value>
  14.    /WEB-INF/servlet-context.xml
  15.   </param-value>
  16.     </init-param>
  17.     <load-on-startup>1</load-on-startup>
  18.   </servlet>
  19.  
  20.   <servlet-mapping>
  21.     <servlet-name>Spring MVC DispatcherServlet</servlet-name>
  22.     <url-pattern>/url/*</url-pattern>
  23.   </servlet-mapping>
  24.    
  25.    
  26. </web-app>


 
servlet-context.xml

Code :
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:mvc="http://www.springframework.org/schema/mvc"
  6. xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/sch [...] vc-3.0.xsd
  7.  http://www.springframework.org/schema/beans http://www.springframework.org/sch [...] ns-3.0.xsd
  8.  http://www.springframework.org/schema/context http://www.springframework.org/sch [...] &#034;&gt;
  9. <mvc:annotation-driven />
  10. <mvc:resources location="/resources/img/" mapping="/images/**" />
  11.  
  12. <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
  13.  <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
  14.  <property name="prefix">
  15.   <value>/WEB-INF/jsp/</value>
  16.  </property>
  17.  <property name="suffix">
  18.   <value>.jsp</value>
  19.  </property>
  20. </bean>  
  21.  
  22. <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean" />
  23.  
  24. </beans>


 
index.jsp

Code :
  1. <%@page contentType="text/html;charset=UTF-8"%>
  2. <%@page pageEncoding="UTF-8"%>
  3. <%@ page isELIgnored="false" %>
  4. <%@ page session="false" %>
  5. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  6. <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
  7. <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
  8. <html>
  9.     <head>
  10.         <!-- En-tête de la page -->
  11.         <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  12.         <title>Projet J2EE index</title>
  13.     </head>
  14.     <body>
  15.         <!-- Corps de la page -->
  16.         <!-- barre de navigation -->
  17.         <p><a href="index.html">Projet J2EE</a></p>
  18.         <p><a href="http://www.siteduzero.com">Livres</a> <a href="http://www.siteduzero.com">Revues</a> <a href="http://www.siteduzero.com">CDs</a> <a href="http://www.siteduzero.com">CDROMs</a> <a href="http://www.siteduzero.com">Clients</a></p>
  19.         <!-- bloc principal -->
  20.          <!-- barre de gauche -->
  21.          <p>Ajouter du contenue</p>
  22.          <p>Louer du contenue</p>
  23.          <p>Restituer du contenue</p>
  24.          <!-- bloc milieu -->
  25.        
  26.          <c:set var="rootUrl" value="${pageContext.request.contextPath}"/>
  27.   <img src="${rootUrl}/images/image.jpg" />
  28.        
  29.          <p>Bienvenue sur le votre espace de gestion, cet interface vous permet de rajouter des client ainsi que du contenue,
  30.          et de louer ou reprendre du contenue</p>
  31.          <p>Utilisez la barre de navigation en haut de votre fenetre pour acceder a ces services</p>
  32.          <!-- barre de droite -->
  33.          <p>Ici se trouve votre historique des 10 dernieres operation et vous permet de les annuler rapidement en cas d'erreur</p>
  34.     </body>
  35. </html>


 
sachant que ces deux lignes :

Code :
  1. <c:set var="rootUrl" value="${pageContext.request.contextPath}"/>
  2.   <img src="${rootUrl}/images/image.jpg" />


 
sont marqué par une croix rouge sur eclipse.
 
ps : je n'ai pas de controlleur pour index.jsp, mais je ne pense pas que ça soit un problemme vu que je n'utilise aucune donnée stocké dans une classe java sur la page

Message cité 1 fois
Message édité par sliders_alpha le 18-01-2012 à 20:41:11
n°2122200
brisssou
8-/
Posté le 18-01-2012 à 22:43:21  profilanswer
 

sliders_alpha a écrit :

donc donc, je n'utilise pas maven et je n'ai donc pas de fichier pom.xml donc pas de dependance a injecter.


 
je vois pas le rapport.
 
si tu n'utilises pas maven, tu dois donc mettre toi même ce jar à la main dans WEB-IF/lib, sinon, pas de jstl.
Si tu vires le jar de spring, pas de spring, bha là pareil, si tu n'as pas le jar des jstl, pas de jstl.


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
mood
Publicité
Posté le 18-01-2012 à 22:43:21  profilanswer
 

n°2122202
sliders_al​pha
Posté le 18-01-2012 à 23:02:25  profilanswer
 

brisssou a écrit :


 
je vois pas le rapport.
 
si tu n'utilises pas maven, tu dois donc mettre toi même ce jar à la main dans WEB-IF/lib, sinon, pas de jstl.
Si tu vires le jar de spring, pas de spring, bha là pareil, si tu n'as pas le jar des jstl, pas de jstl.


 
ha ba c'est moi qui avait mal compris ce qu'etais maven.
 
je pensais que mettre dans le war voulais dire mettre dans les build path.
(d'ailleur j'ai remarqué que tous les .jar que j'ai ajouté dans lib ont été automatiquement mis dans webapp des buildpath)
 
j'ai toute ces librairie la :
 
http://sliders.alpha.free.fr/MVC/lib.jpg
 
j'ai d'ailleur remarqué que tomcat6 a un problem avec log4
 
http://sliders.alpha.free.fr/MVC/log4j.jpg


Message édité par sliders_alpha le 18-01-2012 à 23:02:47
n°2122203
brisssou
8-/
Posté le 18-01-2012 à 23:08:39  profilanswer
 

tu as donc bien jst-1.2.jar dans ton WEB-INF/lib. étrange. j'ai plus d'idée là :D

 

log4j crie juste parce que tu ne l'as pas configuré.

 

essaie de déclarer les tld dans ton web-inf.xml :

Code :
  1. <taglib>
  2.  <taglib-uri>http://java.sun.com/jstl/c</taglib-uri>
  3.  <taglib-location>/WEB-INF/tlds/c.tld</taglib-location>
  4. </taglib>
  5. <taglib>
  6.  <taglib-uri>http://java.sun.com/jstl/fn</taglib-uri>
  7.  <taglib-location>/WEB-INF/tlds/fn.tld</taglib-location>
  8. </taglib>
  9. <taglib>
  10.  <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
  11.  <taglib-location>/WEB-INF/tlds/fmt.tld</taglib-location>
  12. </taglib>

sans conviction...


Message édité par brisssou le 18-01-2012 à 23:10:47

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°2122205
sliders_al​pha
Posté le 18-01-2012 à 23:46:49  profilanswer
 

eclipse n'aime pas ce <taglib>^^
 
http://sliders.alpha.free.fr/MVC/taglib.jpg
 
bon j'en ai mare, demain j'irais voir mon prof referant java qu'il me donne des explication xD


Message édité par sliders_alpha le 18-01-2012 à 23:47:02
n°2122220
brisssou
8-/
Posté le 19-01-2012 à 08:53:18  profilanswer
 

t'es effectivement en 2.3, donc pas de tag lib...


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°2122377
sliders_al​pha
Posté le 19-01-2012 à 18:20:00  profilanswer
 

Well,
 
j'ai resolut le probleme....en changeant de machine!
avec le projet fait de la meme façon (la video),
les meme fichiers (.lib, xml, archive d'eclipse)
 
ça marche maintenant parfaitement.
 
Placer les images dans :

Code :
  1. WebContent
  2. ........resources
  3. .............img


 
Mettre dans servlet-context.

Code :
  1. <mvc:annotation-driven />


 
Et utiliser dans les pages ou on veut afficher des images.

Code :
  1. <img src="<c:url value="/resources/img/image.jpg" />" />


 
La page d'index doit etre en jsp et non html. ceci ne marche pas sur mon pc fixe mais sur mon portable, allez savoir pourquoi...
 
#EDIT
peut etre une piste : mon PC est en 64Bits, mon portable en 32Bits, peut etre que le problemme vient de la (du coup la version d'eclipse est differente)
 
merci de m'avoir d'avoir pris autant de temps pour m'aider =D


Message édité par sliders_alpha le 19-01-2012 à 23:41:15

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [resolue] impossible d'afficher des images sur un spring MVC

 

Sujets relatifs
Android - Afficher des canvas dans un Tabhostcarrousel d'images avec vignettes qui défilent
defilement horizontal d'imagesimpossible de supprimer un objet avec hibernate3+struts
Impossible de lancer SQL Server AgentAfficher plusieur Images avec Netbeans
Demande d'aide: fondu entre deux images sous htmimpossible d'installer java EE
Plus de sujets relatifs à : [resolue] impossible d'afficher des images sur un spring MVC


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR