2012-05-04 5 views
0

Я получил проект со многими линиями, как следующие из них:Почему я не могу вызвать UIComponent.setValueExpression()?

HtmlOutputText content = new HtmlOutputText(); 
ValueBinding vb = dashBoardBean.getApplication() 
    .createValueBinding(columnas[cont][1]); 
content.setValueBinding("value", vb); 

Eclipse, с Java 5, помечает их как осуждается (как класс ValueBinding и метод setValueBinding).

Так я выглядел API for HtmlCommandLink.setValueBinding() (он на самом деле находится в UIComponentBase) и нашел это:

осуждается.Это было заменено на UIComponent.setValueExpression(java.lang.String, javax.el.ValueExpression).

Так что я изменил код последней строки следующим образом:

content.setValueExpression("value", null); 

Но теперь я получаю ошибку компиляции.

Я также попытался:

UIComponent uic; 
uic.setValueExpression("", null); 

И получить ту же ошибку:

The type javax.el.ValueExpression cannot be resolved. It is indirectly referenced from 

необходимых .class файлов

Каков смысл этой ошибки? Как я могу это решить?

+0

Это означает, что его генерация '' и во втором случае делает '' –

+0

@ Luiggi Mendoza Ошибка - ошибка компилятора. Подчеркнуто красным цветом Eclipse. Я не могу выполнить код. –

+0

какая у вас версия JSF? –

ответ

2

Вам нужны баннеры JSF 1.2 (или больше) на вашем пути к классам.