2012-02-20 16 views
5

में छवियों को प्रदर्शित नहीं कर सकता मैं जेएसपी में छवियां प्रदर्शित नहीं कर सकता (और एसआरसी के माध्यम से बाहरी जावास्क्रिप्ट/jQuery जैसी अन्य चीजों तक नहीं पहुंच सकता)। निम्नलिखित जेएसपी पेज में केवल एक <img> टैग है जो एसआरसी द्वारा स्थित छवि प्रदर्शित नहीं कर सकता है।जेएसपी

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 

<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP Page</title> 
    </head> 
    <body> 
     <form action="Temp.htm" method="post"> 
      <img src="/images/temp.jpg" alt="Not available"> 
     </form> 
    </body> 
</html> 

छवियों /WEB-INF/jsp/images में हैं। मैंने छवि स्थान बदलने और हर बार सुनिश्चित किया है कि एसआरसी को दिया गया पथ अभी भी सही नहीं है। ढांचे के बिना अनुप्रयोगों के साथ भी संभव है। यह पूरी तरह से काम करता है। मुझे यहाँ क्या याद आ रही है?

+2

आप एहसास है कि यह पूरी तरह से कुछ भी नहीं स्प्रिंग और हाइबरनेट से कोई लेना देना नहीं है द्वारा शुरू कर देना चाहिए। –

उत्तर

10

पहले, /WEB-INF बाहर से उपलब्ध नहीं है।

दूसरा, अगर आप /images/temp.jpg उपयोग करते हैं, ब्राउज़र छवियों वेब सर्वर की रूट से अपने वेब एप्लिकेशन की जड़ (जो एक संदर्भ पथ के तहत तैनात किया जाता है) से लोड करते हैं, और नहीं होंगे।

उपयोग JSTL <c:url> टैग वेब एप्लिकेशन की जड़ से निरपेक्ष पथ उत्पन्न करने के लिए:

<img src="<c:url value='/images/temp.jpg'/>" alt=.../> 
5

आप सीधे वेब से /WEB-INF/ में स्थित फ़ाइलों तक नहीं पहुंच सकते हैं। फ़ोल्डर वेब एक्सेस से संरक्षित है।

कहीं और अपनी छवि फ़ाइलों को ढूंढें। /images/temp.jpg एक पूर्ण पथ है, हालांकि आपको संभावित रूप से एक रिश्तेदार की आवश्यकता है। अपने छवि पथ को image/temp.jpg पर इंगित करें और छवियों को सीधे अपने वेब रूट के नीचे स्थित /images/ फ़ोल्डर में रखें। जैसे WebContent/images या src/main/webapp/images (आपके वेब रूट के आधार पर)।

2

वेबपैप निर्देशिका में डालने का प्रयास करें, वेब-आईएनएफ नहीं। Obv। जेएसपी डीआईआर में घोंसला न करें।