Как мне указать условия из 2 разных bean-компонентов в атрибуте рендеринга jsf? - PullRequest
9 голосов
/ 17 июня 2009

Я хочу сделать что-то вроде следующего, но когда я использую это таким образом, я получаю ошибку синтаксического анализа, говорящую мне, что объект должен следовать непосредственно за символом '&':

<ice:selectManyCheckbox
rendered="#{!bean1.condition1 && bean2.condition2}"
value="#{bean1.selected}">
<f:selectItems value="#{bean2.items}" />
</ice:selectManyCheckbox>

Как мне сделать так, чтобы проверить условия двух разных бинов?

Ответы [ 3 ]

13 голосов
/ 17 июня 2009

Используйте 'и' вместо:

<ice:selectManyCheckbox rendered="#{!bean1.condition1 and bean2.condition2}" value="#{bean1.selected}">
4 голосов
/ 17 июня 2009

karim79 прав, вы можете просто использовать оператор and.

В дополнение к этому вы можете взглянуть на эту страницу , которая объясняет язык выражений (EL) на нескольких примерах ...

0 голосов
/ 04 июня 2012

Возможно, вы используете facelets, который предполагает, что каждая страница JSP после компиляции представляет собой файл XML. И вы знаете, что в xml-файле вы должны указать имя сущности xml сразу после символа &. Чтобы избежать этой ситуации, используйте &amp; вместо &.

...