2009-10-29 3 views
3

В отличном ответе от другого question Я начал устанавливать глобальные ресурсы (css/js/images) в методе моего WebApplication init(). Используя следующее:Ссылка на изображение в CSS с Wicket

mountSharedResource("/images/edit-btn.gif", new ResourceReference(GlobalResource.class, "edit-btn.gif").getSharedResourceKey()); 

Это, конечно, позволяет CSS в другой пакет, чтобы сделать что-то вроде этого:

background-image: url("/images/edit-btn.gif"); 

Проблема я столкнулся в том, что это работает только во время выполнения, смонтированный путь виртуальная. Одним из больших преимуществ Wicket (imo) были функции (<wicket:remove>, xml действительные теги, заголовки ссылок, наследование страниц), что позволило дизайнеру страницы, работающему с макетом, визуализировать страницу с ее изображениями js, css и т. Д. без необходимости работать в калитном двигателе.

Я полностью согласен с тем, что между проектами дизайнера/программиста в веб-приложениях не существует четкой линии, но мне кажется странным, что дизайнеры Wicket пропустили это. Есть ли способ разрешить универсально используемое изображение для рендеринга автономно, а также работать во время выполнения в Wicket?

ответ

2

Я думаю, что the recommended way должен взять html от ваших дизайнеров и превратиться в компоненты калитки - это означает, что вы разделите его на несколько файлов. Предоставление этих частичных файлов не будет работать без каких-либо дополнительных усилий. Я бы рекомендовал настроить простой скрипт, инструмент или что-нибудь в этом направлении, которое запустит ваш webapp для ваших дизайнеров. Таким образом, они могут изменять фрагменты и сразу видеть обновленный рендеринг. Вам нужно будет согласовать общую структуру и рассказать им, как использовать <wicket:remove>, и все должно быть в порядке.

+0

Я не очень рад этому решению, но это единственное, что я получил, чтобы работать. У меня есть небольшой скрипт, который они могут запустить, чтобы проверить его сейчас. – Scanningcrew

+0

В качестве дополнительной идеи вы могли бы использовать функцию предварительной обработки ресурсов wicketstuff-merged-resources для изменения патчей в файлах CSS во время выполнения (например, с «edit-btn.gif» до «/images/edit-btn.gif»). Я бы не рекомендовал этого. – sfussenegger

Смежные вопросы