На самом деле, с JSF 1.0 был "хакерский" способ сделать это.Вы просто создаете метод на своем компоненте поддержки, который возвращает Map, и вы можете использовать JSF EL для передачи любого объекта в этот метод, так как JSF думает, что вы передаете ключ на карту.
Тем временемв вашем методе вспомогательного компонента вы на самом деле возвращаете «самозваный» экземпляр карты, который на самом деле не является картой, чей get()
метод делегирует метод, который вы хотите вызвать.В вашем файле .xhtml или .jsp вы можете использовать квадратную скобку для передачи переменной.
Расширение HashMap
- это один из способов облегчить определение карты-самозванца - достаточно кратко, чтобы использовать анонимныйвнутренний класс таким образом.
Это взлом, но в прошлом он хорошо работал для меня.