Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Ошибка с JSF


Автор: farrier 21.7.2011, 14:57
Господа, подскажите в чем тут трабл.
Обычный код JSF типа 
Код

<h:inputText id="l1" value="#{loginBean.number}"/>

В этом поле на самой странице выводится вместо значения number из бина loginBean - строка #{loginBean.number}
В чем тут дело?

Автор: AntonSaburov 21.7.2011, 15:19
А такой бин точно существует в конфигурации ? И у него есть getNumber() ?

Автор: nc30 21.7.2011, 16:23
farrier
Странно, что вообще что-то в поле выводится. Если бин не прописан в конфигурации, то после JSF-рендеринга туда вернется null и итогом будет пустая строка. Если бин зарегистрирован, но нет соответствующего геттера, то ситуация будет менее приятная, типа: Error getting property 'number' from bean of type ... 

А приведенный вами вывод говорит о том, что EL-выражение не было обработано движком JSF, хотя h-тег отрендерился нормально. 

Мда, единственный вариант, который приходит в голову:
Код

public String getNumber() {
    return "#{loginBean.number}";
}
 smile 

Автор: farrier 21.7.2011, 22:36
Может быть это как-то связано с тем, что все это дело на Windows 7 стоит?

Автор: farrier 22.7.2011, 00:33
Попробовал на Линуксе - та же ситуация. В чем тут дело ? Может view-handler надо прописать?

Автор: AntonSaburov 22.7.2011, 11:31
Тогда проще весь проект посмотреть. Мы уже гадать начинаем.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)