Вы не можете использовать условный оператор ?:
в выражениях значения и действия. Выражение значения выдало бы PropertyNotWritableException
в форме submit, потому что синтаксис EL не представляет собой операцию записи, вместо этого это операция только для чтения. Выражение действия уже выбрало бы ELException: not a valid method expression
для загрузки страницы, потому что синтаксис EL не представляет собой выражение метода, а выражение значения.
Вам нужно решить его по-другому, а затем таким образом, чтобы вы могли полностью избавиться от условного оператора ?:
в выражениях значения и действия. Это может быть достигнуто несколькими способами:
globalFilter
, но методы прослушивания действий не используются. Я предлагаю переименовать их в filter()
и resetFilter()
. Затем вы можете извлечь абстрактный базовый класс из этих классов bean и использовать его в файле custom tag , например, следующим образом:
, который реализован следующим образом (если предположить, что эти beans являются областями запроса):
(если ваш компонент находится в другой области, просто измените #{requestScope}
соответственно, например #{viewScope}
)