Проблемы URL JSF2.0 - Изображения из ресурсов JavaScript - PullRequest
2 голосов
/ 04 августа 2011

Я новичок в JSF, и я искал 2 дня, чтобы решить эту проблему.

У меня есть сервер Tomcat со следующей структурой папок:

...
  project_name
    jfs
       ...
       analysis.xhtml
       reports
          reports.xhtml
    resources
       javascript
          parameterPanel.js
       images
          loading.png

В файлах analysis.xhtml и reports.xhtml я добавил параметр Panel.js следующим образом:

    <h:outputScript library="javascript" name="parameterPanel.js"/>

В файле parameterPanel.js я использую этот loading.png ... Как мне записать URL для этого png?

Я пробовал вот так:

  • 'url (../ resources / images / loading.png)' - анализ обнаружил png, отчеты не
  • 'url (../../ resources / images / loading.png)' - отчеты обнаруживают png, анализ не

Или есть другое решение этой проблемы?

Я немного растерялся ...

Спасибо!

Ответы [ 2 ]

2 голосов
/ 04 августа 2011

Вместо этого укажите эти изображения с помощью CSS.

/resources/css/style.css

.parameterButtonImage {
    background-image: url(#{resource['images/parameter/parameter_button_doubleArrow_down.png']});
}

.parameterButtonImage.open {
    background-image: url(#{resource['images/parameter/parameter_button_doubleArrow_up.png']});
}

(я предполагаю, что рассматриваемый элемент HTML имеет class="parameterButtonImage")

Загрузить по:

<h:outputStylesheet name="css/style.css" />

(таким образом JSF позаботится о разрешении #{resource} путей)

Измените ваш JS следующим образом (при условии MooTools):

function toggleParametersPanel() { 
    $('parameterButtonImage').toggleClass('open');
    new Fx.Slide('parameterPanelContent').toggle();
}
0 голосов
/ 04 августа 2011

Вы должны написать свой URL относительно этого

<img src="${pageContext.request.contextPath}/images/loading.png" />  
...