2012-05-04 112 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(或更高版本)的jar包。

相关问题