Я создал динамический веб-проект для показа JSP через сервлет (я не могу использовать какие-либо фреймворки, такие как Spring ...).По умолчанию мои встроенные классы были помещены в Build / classes, поэтому после того, как я изменил выходную папку на WebContent / WEB-INF / classes, мое приложение работает нормально.Послесловие я преобразовал проект в проект Maven.(Я не помню, чтобы мне нужно было менять папку вывода в последний раз, когда я работал с Servlets / JSP, что было 3 года назад!).
В любом случае, теперь я не могу отобразить изображение на своей странице, я поместил изображение в WebContent / images / logo.jpg, а также в /images/logo.jpg (ни одно из этих мест не работало!)
Это то, что я добавил в JSP для отображения изображения
<img alt="1" src="/images/logo.jpg" width="88">
<img alt="2" src="images/logo.jpg" width="88">
<img alt="3" src="<c:url value='/images/logo.jpg'/>" width="88">
<img alt="4" src="<c:url value='images/logo.jpg'/>" width="88">
<img alt="5" src="/<c:url value='/images/logo.jpg'/>" width="88">
<img alt="6" src="/<c:url value='images/logo.jpg'/>" width="88">
<img alt="7" src="<% request.getContextPath(); %>/images/logo.jpg" width="88">
<img alt="8" src="<% request.getContextPath(); %>images/logo.jpg" width="88">
<img alt="9" src="/<% request.getContextPath(); %>/images/logo.jpg" width="88">
<img alt="A" src="/<% request.getContextPath(); %>images/logo.jpg" width="88">
<img alt="B" src="/WebContent/images/logo.jpg" width="88">
<img alt="C" src="WebContent/images/logo.jpg" width="88">
<img alt="D" src="<c:url value='/WebContent/images/logo.jpg'/>" width="88">
<img alt="E" src="<c:url value='WebContent/images/logo.jpg'/>" width="88">
<img alt="F" src="/<c:url value='/WebContent/images/logo.jpg'/>" width="88">
<img alt="G" src="/<c:url value='WebContent/images/logo.jpg'/>" width="88">
<img alt="H" src="<% request.getContextPath(); %>/WebContent/images/logo.jpg" width="88">
<img alt="I" src="<% request.getContextPath(); %>WebContent/images/logo.jpg" width="88">
<img alt="J" src="/<% request.getContextPath(); %>/WebContent/images/logo.jpg" width="88">
<img alt="K" src="<% request.getContextPath(); %>WebContent/images/logo.jpg" width="88">
<img alt="L" src="${pageContext.request.contextPath}/WebContent/images/logo.jpg" width="88">
<img alt="M" src="${pageContext.request.contextPath}WebContent/images/logo.jpg" width="88">
<img alt="N" src="/${pageContext.request.contextPath}/WebContent/images/logo.jpg" width="88">
<img alt="O" src="/${pageContext.request.contextPath}WebContent/images/logo.jpg" width="88">
<img alt="P" src="${pageContext.request.contextPath}/images/logo.jpg" width="88">
<img alt="Q" src="${pageContext.request.contextPath}images/logo.jpg" width="88">
<img alt="R" src="/${pageContext.request.contextPath}/images/logo.jpg" width="88">
<img alt="S" src="/${pageContext.request.contextPath}images/logo.jpg" width="88">
Я также добавил эту строку в JSP для отладки contextPath
<c:url value='images/logo.jpg'/><br /><br /> <!-- shows: images/logo.jpg -->
<% request.getContextPath(); %> <br /> <!-- shows nothing! in the JSP but shows /GraphGenerator from the servlet (using sysout)-->
${pageContext.request.contextPath} <br /> <!-- shows: /GraphsGenerator (name of the project as displayed in the url http:localhost:8080/GraphsGenerator/ -->
Это структура проекта:
![enter image description here](https://i.stack.imgur.com/5e6yL.png)
Я использую:
- Java 8.
- Eclipse IDE.
- Динамический веб-модуль v3.1.
- Сервер Tomcat v9.0
Если вы сможете найти решение (и объяснение тоже было бы неплохо), я будуочень благодарны.Спасибо!