Exactly, it should display "xxx", but it doesn't.
Martin Marinschek wrote:
But his expression is ok as well - #{'xxx'} should work, it should display xxx... regards, Martin On 8/10/07, Adam Winer <[EMAIL PROTECTED]> wrote:On 8/10/07, Luka Surija <[EMAIL PROTECTED]> wrote:Hi, I'm trying to create a tr:table using binging, and almost everything works fine except, getting row values in table. I've created in index.xhtml this: <tr:table binding="bean.table" /> and in backing bean crating columns, and outputText inside columns. This is working well, but I can't figure out how to set value to the outputText as an expression using row value. Example: table.setValue(getMyData()); table.setVar("row"); CoreColumn column = new CoreColumn(); column.setParetn(table);Don't do this! setParent() is called for you. Don't ever call it on your own (see the Javadoc).column.setTransient(true); CoreOutputText text = new CoreOutputText(); text.setParent(column); text.setTransient(true); column.getChildren().add(text); table.getChildren().add(column); and now the tricky part. How to set an value to text? 1. case text.setValue("bla"); --- it works, "bla" is showing in each row of the table. 2. case and 3. case ExpressionFactory ef = FacesContext.getCurrentInstance().getApplication().getExpressionFactory(); ELContext elContext = FacesContext.getCurrentInstance().getELContext(); ValueExpression value = ef.createValueExpression(elContext,"#{'xxx'}",String.class); text.setValue(value) --- "ValueExpression[#{'xxx'}] is showing as output in table cell text.setValueExpression("value",value) --- table cell is emptyYou want text.setValueExpression() - the problem will be that your ValueExpression is wrong. It needs to be something like: ValueExpression value = ef.createValueExpression(elContext,"#{row.xxx}",String.class); -- Adam

