Ответ 1
EL-выражения оцениваются только в файлах Facelets (XHTML) и в файлах CSS, загружаемых через <h:outputStylesheet>
. Они не оцениваются в JS файлах, загружаемых через <h:outputScript>
.
Вам в основном нужно отобразить встроенную script, которая устанавливает (глобальную) переменную JavaScript, которую должен, по очереди, ссылаться на JS файл.
<h:outputScript>var spinnerImage = "${resource['img/sppiner.png']}";</h:outputScript>
<h:outputScript name="js/some.js" />
arguments[i].poster = spinnerImage;
Однако гораздо более чистым является установка изображения в качестве фонового изображения CSS, связанного с определенным классом стиля CSS, а затем просто чтобы JavaScript задал этот класс стиля на нужном элементе. Как сказано, вы можете использовать выражения EL в файлах CSS, загруженных через <h:outputStylesheet>
. См. Также a.o. Как ссылаться на ресурс изображений JSF как URL-адрес фонового рисунка CSS.