I'm also a newbie, but I believe you do this as follows:

          <h:dataTable id="table"
binding="#{backingBeanClassInstance.dataTable}"

public class BackingBeanClass
{
    private HtmlDataTable dataTable;
    public HtmlDataTable getRelationshipDataTable()
    {
        return this.dataTable;
    }
    public void setDataTable(HtmlDataTable dataTable)
    {
        this.dataTable= dataTable;
        
        // perform any initialization
        // note that this will be called on every request,
        // so this initialization may have already run once before.
    }
}

I've used this method to dynamically add columns to an empty HtmlDataTable.

On 4/29/05, Lking <[EMAIL PROTECTED]> wrote:
> Hi all,
> 
>     As a newbie in JSF and MyFaces I'm wondering how to set some component
> property before JSF page is loaded.
> 
>     I have a page with a DataTable and before it's shown I'd like to change
> some properties like the columns and based on a criteria I'd like to set the
> rendered property of some commandButton as well. There's properties will
> always be the same so I set those in the page itself. But others are going
> to be changed the first time the page is loaded. I tried the constructor but
> it didn't worked out because all components were still "null" and they will
> remain until I invoke the first action.
> 
>     At the moment I only got it changing all my get methods checking... if
> (component == null) component = new HtmlDataTable();.. but it doesn't seem
> to be what I want because all the properties I set in the page were lost...
> 
>     Has anyone a way to solve it?
> 
> Thanks and sorry for my english,
> Lkin.
> 
>

Reply via email to