2011-01-31 4 views
-2

Мне нужно динамически создать jsf dataTable, что означает отсутствие столбцов будет отличаться и будет определено во время выполнения Любой пример будет оценен.динамически генерировать jsf dataTable

-SPD

     <ice:dataTable var="item" 
          value="#{section.rowDataModel}"> 
          <ice:columns value="#{section.columnDataModel}" 
           var="column"> 
           <f:facet name="header"> 
            <ice:panelGroup> 
             <ice:outputText value="#{column.columnName}" style="#{column.columnWidth}"/> 
            </ice:panelGroup> 
           </f:facet> 
           <!-- display the table cell values--> 
           <ice:panelGroup 
            style="text-align: center; white-space: nowrap;"> 
            <ice:inputText value="#{section.columnValue}" /> 
           </ice:panelGroup> 
          </ice:columns> 
         </ice:dataTable> 
+5

Любые усилия с вашей стороны также будут оценены. Это не машина для генерации кода. –

+4

'QuestionNotFoundException'. Пожалуйста, укажите ясную проблему. В какой именно момент вы боретесь? – BalusC

+0

@ Андрей: Я попросил пример кода, может быть URL, который указывает мне в правильном направлении. Я думал, что мы здесь, чтобы помогать друг другу. Кстати, я решил проблему. – SPD

ответ

3

Может быть вы можете связать DataTable:

<h:dataTable id="myTable" bind="#{myBean.table}"... /> 

Bean:

public class MyBean() { 
    private HtmlDataTable dt; 

    public MyBean() { 
     initTable(); 
    } 

    private initTable() { 
     dt = new HtmlDataTable(); 
     //Add here your columns using HtmlColumn 
     HtmlColumn hc = new HtmlColumn(); 

     //You can set colum values using ValueExpression 
     //And add column to table using getChildren().add(hc); 
     (...) 
    } 
    //Getters and setters 
} 

Подробнее о ValueExpression можно найти here.

И не стесняйтесь использовать h: dataTable или rich: dataTable. То же самое для столбца h: column или rich: column, просто проверьте имя компонента here.

1

Попробуйте гнездо с: Foreach или УИ: повторение (если вы используете Facelets) и визуализации Tr (внешний контур), TD (внутренняя петля) помечает себе

Смежные вопросы