Как связать мою папку с изображениями внутри моего приложения Apache Wicket?

Моя структура пакета выглядит так:

  • источник/основной/Java
  • источник/основной/ресурсы
  • источник/тест/Java
  • источник/тест/ресурсы
  • источник/основной/веб-приложение/CSS
  • источник/основной/веб-приложение/изображения
  • источник/основной/js
  • источник/основной/WEB-INF

Мои изображения хранятся в папке src/main/webapp/images.

Теперь я хочу динамически ссылаться на изображение, например:

    Image picture = new Image("picture",
                    new ContextRelativeResource("/images/races/"
                            + dynamicPicture));

Проблема в том, что мое приложение не может найти /images/races/$dynamicPicture. Как указать правильный путь к папке с изображениями? Используемый сервер приложений — Jetty.


person lazydaemon    schedule 19.08.2012    source источник


Ответы (2)


Действительно, ваш код должен работать. Используете ли вы Maven для управления своим проектом и для запуска Jetty?

person Andrea Del Bene    schedule 19.08.2012
comment
Я использую maven для управления своим проектом. Чтобы развернуть мой проект, я запускаю Run as -> Maven Install. Затем я копирую файл .war в папку с веб-приложениями в каталоге Jetty. - person lazydaemon; 20.08.2012
comment
Теперь я скопировал все изображения в определенный пакет моего Java-класса и файла .html и реализовал изображение с помощью: нового изображения (изображение, новый PackageResourceReference (MyPage.class, picture + .gif)); Это не то, что я хотел, но это работает. - person lazydaemon; 20.08.2012
comment
Попробуйте удалить косую черту из /images/races. Я тоже думаю, что должно работать. Вы можете немного упростить его, используя компонент ContextImage. - person martin-g; 21.08.2012
comment
@ marting-g Как это может быть решением? ContextRelativeResource проверяет наличие косой черты и добавляет ее, если она отсутствует (1.5.7). - person Christoph Leiter; 22.08.2012

Он будет работать с (убрана ведущая косая черта)

    Image picture = new Image("picture",
                new ContextRelativeResource("images/races/"
                        + dynamicPicture));
person lazydaemon    schedule 21.08.2012