тег свойств Struts не работает с тегом <img src> в jsp

1

Я пытаюсь отображать файлы изображений на странице JSP с помощью JavaBean и Struts 2 путем извлечения пути из базы данных. Тег <img> не распознает путь изображения.

Когда я пытаюсь отобразить путь, он показывает правильный путь, используя эту строку:

<s:property value='%{path}'/>
<s:property value='#{path}'/>

# Displays

C:\Users\Admin\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\File_Demo\1011_1.png

При написании этого выражения тегом <img> ничего не отображается.

<%@ taglib uri="/struts-tags"  prefix="s"%>
<html>
  <body>
    <img alt=":p" src="<s:property value='%{path}'/>"/>
  </body>
</html>
  • 0
    Почему %{path} а не ${path}
  • 0
    Изображения предоставляются относительно вашего приложения, либо помещая их в известное место и передавая их по потоку из действия или сервлета, либо сопоставляя местоположение сервера с этим путем и т. Д.
Теги:
jsp
struts2

1 ответ

0
Лучший ответ

Поэтому сначала проверьте на отображаемой странице, что тег img содержит правильный параметр пути (вы сказали, что пытались распечатать его, но лучше проверить dbl). (Просмотр источника или в Firefox, правый clikc и элемент проверки).

Но главная проблема - ваш фактический путь. Из вопроса это абсолютный путь к некоторому директору на вашем диске C :. Но это не ваш браузер, который извлекает этот файл непосредственно с диска, но он является сервером, который обслуживает его, поэтому ваш сервер (tomcat, я думаю?) Должен иметь возможность разрешить путь к определенному файлу. Обычно веб-сервер использует относительные пути не абсолютные, поэтому он не сможет обслуживать весь контент вашей машины.

В webapp это будут файлы, относящиеся к вашей подпапке webapp: глядя на ...\org.eclipse.wst.server.core\tmp0\wtpwebapps\File_Demo\1011_1.png. Я думаю (я сам не использую eclipse), что ваш сервер находится под org.eclipse.wst.server.core\tmp0, а ваш webapp называется File_Demo.

поэтому правильный путь к изображению должен быть только 1011_1.png (или ../1011_1.png если ваше действие ../1011_1.png находится внутри некоторого пакета).

  • 0
    спасибо, это сработало ...
  • 0
    если это так, вы, вероятно, должны принять ответ

Ещё вопросы

Сообщество Overcoder
Наверх
Меню