Этот атрибут хорош для чего-либо? Это просто побочный эффект различных дизайнерских решений?
Это действительно "по замыслу", так как компонент расширяется UIOutput
. Он действительно не использует конвертер ни для чего.
Причина, по которой я спрашиваю, состоит в том, что было бы неплохо выполнить некоторую обработку CSS на стороне клиента или сервера с меньшим или аналогичным, и я подумал, что этот атрибут может помочь.
Вы можете просто использовать EL обычным способом в ресурсах CSS, загруженных <h:outputStylesheet>
. Первоначально это было реализовано для правильного разрешения ресурсов фонового изображения.
.some {
background-image: url(#{resource[images/some.png]});
}
В приведенном выше примере предполагается, что изображение находится в /resources/images/some.png
. Если вы используете библиотеку, вам нужно добавить префикс имени ресурса к libraryname:
.
.some {
background-image: url(#{resource[somelibrary:images/some.png]});
}
Предполагается, что изображение находится в /resources/somelibrary/images/some.png
.
Но кроме этого, вы можете в основном использовать EL в ресурсе CSS для всего остального. Например. динамическое разрешение цветов, шрифтов и т. д.
.some {
color: #{theme.color};
font: #{theme.font};
}
Где #{theme}
может быть сеансом или управляемым приложением bean-объектом.