Я сталкиваюсь с некоторыми проблемами при попытке получить доступ к некоторым свойствам с параметрами. Ну, я не знаю, следует ли их называть свойствами, поскольку у аксессуаров есть параметры, но теперь можно назвать их свойствами.Проблемы с JSF 2.0 и параметризованные выражения EL
Ситуация такова:
У меня есть класс Student, который содержит различные локализаций как объекты в карте. Я могу получить эти объекты локализации, делая это:
student.getLocalizedData(String localizationCode);
Теперь на странице, я пытаюсь сделать это: описание
<h:inputText value="#{collegeBean.student.getLocalizedData('es').profileDescription}"/>
студента может иметь много локализаций.
Страница загружается правильно, но когда я пытаюсь спасти ученика, он говорит, что у bean collegeBean нет свойства getLocalizedData, жестко, что это свойство учащегося, содержащегося в bean-компоненте.
Я знаю, что линия ума, поэтому я попытался обернуть его:
<h:inputText value="#{collegeBean.getStudentLocalizedData('es').profileDescription}"/>
Увы, опять-таки я получаю такое же сообщение.
Единственное, что я нашел, это сделать метод, который полностью обертывает spinperty studen't ... но это оставляет меня с двумя методами (get + set) для каждой локализации, и это только для одного свойства. Это означает, что я закончу наличие (2 x локализации x атрибутов) количества методов !.
Есть ли какой-либо подход, который я могу предпринять, чтобы решить эту проблему наиболее динамично? В будущем количество локализаций может измениться, и я не хочу менять какой-либо код.
EDIT: Я использую JBoss 6.1.0.Final и реализации JSF, что происходит с ним Jsf 2.0.3-b05
Я собираюсь на карте. Что касается реализации, я использую реализацию JSF, которая поставляется с JBoss 6.1.0.Final. Это была важная часть вопроса, извините, я пропустил ее. – Gamb
EL не привязан к JSF impl, но к контейнеру servletcontainer, который находится в вашем случае, таким образом, JBoss 6.1.0 (который под крышками использует Apache EL, как и Tomcat). – BalusC
Я этого не знал! Однако вариант карты работал как шарм. Спасибо, мужик! ты жжешь!. – Gamb