Jsf data table component + print null cell

I am using the jsf data table component and binding the column values to a backing bean.
<h:dataTable binding="#{backing_showDifferences.dataTable2}"
id="dataTable2">
<h:column binding="#{backing_showDifferences.userColumn1}"/>
<h:column binding="#{backing_showDifferences.userColumn2}"/>
<h:column binding="#{backing_showDifferences.userColumn3}"/>
</h:dataTable>
- some code from my showDifferences.java
HtmlOutputText column1Text = new HtmlOutputText();
vb =
FacesContext.getCurrentInstance().getApplication().createValueBinding("#{users.uclass}");
column1Text.setValueBinding("value", vb);
usercolumn1.getChildren().add(column1Text);
HtmlOutputText column2Text = new HtmlOutputText();
vb =
FacesContext.getCurrentInstance().getApplication().createValueBinding("#{users.ue1}");
column2Text.setValueBinding("value", vb);
usercolumn2.getChildren().add(column2Text);
HtmlOutputText column3Text = new HtmlOutputText();
vb =
FacesContext.getCurrentInstance().getApplication().createValueBinding("#{users.ue2}");
column3Text.setValueBinding("value", vb);
usercolumn3.getChildren().add(column3Text);
ResultSetDataModel dataModel = new ResultSetDataModel();
dataModel.setWrappedData(rs);
dataTable2.setValue(dataModel);
The raw HTML:
<table id="form1:dataTable2" class="iuptable" border="1">
<thead>
<tr>
<th scope="col">Heading 1</th>
<th scope="col">Heading 2</th>
<th scope="col">Heading3</th>
</tr>
</thead>
<tbody>
<tr>
<td>some data in this column</td>
<td>X</td>
<td></td>
</tr>
<tr>
<td>Some more data in this row</td>
<td>X</td>
<td></td>
</tr>
</tbody>
</table>
My problem is this...in the raw HTML the <td></td> tag is not formatted nicely on my table output. I have lines around my entire table and each cell within it. When the <td></td> prints there are no lines. I am new to the JSF table data component, but if I were writing some JSP or servlet code I would check that if value was null I would append an &nbsp to the <td> tag (ex. <td>&nbsp</td>) and the table would be formatted properly. The backing bean that I am binding to is pulling the data from a database table...so my sql looks like this:
SELECT uclass, ue1, ue2 from table1; my problem is when ue1 or ue2 is a null value.
Any ideas would be greatly appreciated!

Hi,
the h:dataTable belongs to the JSF Reference Implementation from Sun, not to Oracle ADF Faces. The rendering is within this component set and I suggest to report your issue on one of the SUN forums (http://forum.java.sun.com/forum.jspa?forumID=427) as we have no handle to e.g. fix an issue if it exists in the component set.
Frank

Similar Messages

  • Issue with appending data to JSF HTML - Data Table Component

    I am following the article from Oracle Magazine title Generating a JSF Data Table:
    http://www.oracle.com/technology/oramag/oracle/06-jan/o16jsf.html After tweaking the code I was able to get the example working in Part 2 of this article...I was able to run a query and the results were brought back to my table...my question is, after you perform the query once, the results of the new query are appended to each column...and if you submit another query the new results are appended to the results from the previous 2 queries...what call do I need to make in order to "refresh" the table or reset the column values. I am new to the JSF table data component. Here is the code being used...the commandButton1_action() method is called each time a new query is submitted:
    ppublic String commandButton1_action()
    // Add event code here...
    ResultSet rs;
    try{
    Class.forName("oracle.jdbc.driver.OracleDriver");
    String url="jdbc:oracle:thin:@localhost:1521:OracleDB";
    Connection connection = DriverManager.getConnection(url, "OE", "password");
    Statement stmt=connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
    ResultSet.CONCUR_READ_ONLY);
    rs=stmt.executeQuery((String)inputText1.getValue());
    dataTable1.setBorder(5);
    dataTable1.setCellpadding("1");
    dataTable1.setVar("catalog");
    HtmlOutputText headerComponent = new HtmlOutputText();
    headerComponent.setValue("CatalogId");
    column1.setHeader(headerComponent);
    headerComponent = new HtmlOutputText();
    headerComponent.setValue("Journal");
    column2.setHeader(headerComponent);
    headerComponent = new HtmlOutputText();
    headerComponent.setValue("Publisher");
    column3.setHeader(headerComponent);
    headerComponent = new HtmlOutputText();
    headerComponent.setValue("Edition");
    column4.setHeader(headerComponent);
    headerComponent = new HtmlOutputText();
    headerComponent.setValue("Title");
    column5.setHeader(headerComponent);
    headerComponent = new HtmlOutputText();
    headerComponent.setValue("Author");
    column6.setHeader(headerComponent);
    HtmlOutputText column1Text=new HtmlOutputText();
    ValueBinding vb =
    FacesContext.getCurrentInstance().getApplication().createValueBinding("#{catalog.catalogid}");
    column1Text.setValueBinding("value", vb);
    column1.getChildren().add(column1Text);
    HtmlOutputText column2Text=new HtmlOutputText();
    vb =
    FacesContext.getCurrentInstance().getApplication().createValueBinding("#{catalog.journal}");
    column2Text.setValueBinding("value", vb);
    column2.getChildren().add(column2Text);
    HtmlOutputText column3Text=new HtmlOutputText();
    vb =
    FacesContext.getCurrentInstance().getApplication().createValueBinding("#{catalog.publisher}");
    column3Text.setValueBinding("value", vb);
    column3.getChildren().add(column3Text);
    HtmlOutputText column4Text=new HtmlOutputText();
    vb =
    FacesContext.getCurrentInstance().getApplication().createValueBinding("#{catalog.edition}");
    column4Text.setValueBinding("value", vb);
    column4.getChildren().add(column4Text);
    HtmlOutputText column5Text=new HtmlOutputText();
    vb =
    FacesContext.getCurrentInstance().getApplication().createValueBinding("#{catalog.title}");
    column5Text.setValueBinding("value", vb);
    column5.getChildren().add(column5Text);
    HtmlOutputText column6Text=new HtmlOutputText();
    vb =
    FacesContext.getCurrentInstance().getApplication().createValueBinding("#{catalog.author}");
    column6Text.setValueBinding("value", vb);
    column6.getChildren().add(column6Text);
    ResultSetDataModel dataModel=new ResultSetDataModel();
    dataModel.setWrappedData(rs);
    dataTable1.setValue(dataModel);
    catch(SQLException e){}
    catch(ClassNotFoundException e){}
    return null;
    Thanks for any help!

    anyone using the JSF HTML Data Table Component?

  • Custom Tag in JSF Data Table

    I would like to do the equivalent of a custom tag within a JSF data table. How is this done? Custom tags don't seem to work within a JSF data table.

    There's a decent tutorial here, Priyo:
    http://www.exadel.com/tutorial/jsf/HowToWriteYourOwnJSFComponents.pdf
    Hope it helps,
    Illu

  • I18n: text label of Table Header of Data Table Component

    hi all
    JSC Hangs when i try to change text label of Table Header (Column) of Data Table Component to my favorite language for example Arabic or Persian Language.
    is this bug!!!

    Hi,
    Please take a look at the tutorial Internationalization at
    http://developers.sun.com/prodtech/javatools/jscreator/learning/tutorials/index.jsp
    may help you
    regards

  • JSF Data Table extension using sun's RI

    How do i modify the iteration logic of datatable in JSF? I need for 3 iteration the data table has to insert one row. How do i create custom component for these type of business logic?
    It should iterate horizontally,

    lets say you have a mainCollection and displayCollection.
    Iterator mainIter  = mainCollection.iterator();
    MainObject mainObj = null;
    DisplayObject dispObject = new DisplayObject();
    int counter = 1;
    while(mainIter.hasNext()){
        mainObj = (MainObject)mainIter.next();
        dispObject.setSomething1(mainObject.getSomething1());
        dispObject.setSomething2(mainObject.getSomething2());
        dispObject.setSomething3(mainObject.getSomething3());
       if(counter%3==0){   // add the object to the list and create a new instance
           displayCollection.add(dispObject);
           dispObject = new DisplayObject();
    counter =counter +1;
    if(dispObject !=null && dispObject.getSomething1()!=null){
           displayCollection.add(dispObject);  // add if this object is not added as the size of the list was not divisible by 3
    }Map this displayCollection in your JSP for display. You can have a single data table which will iterate over this collection.

  • JSF-Data Table displaying all data in a single row

    Hi Guys,
    Im new to JSF, im trying to display the details from a List in a data table, but all the details are getting displayed in a single cell instead of displaying as rows, can someone help me with this problem?

    You need post your code so that we can view it.
    This is an example of dataTable
    <h:dataTable border="1" id="qresults" cellpadding="4" styleClass="subjectQRTbl" cellspacing="4" value="#{wormingList.worming}" var="bbr" first="#{wormingList.firstRowIndex}" rows="#{wormingList.noOfRows}" rowClasses="evenRow,oddRow">
    <h:column>
    <f:facet name="header">
         <h:outputText escape="false" value="Vaccination Date" />
    </f:facet>
    <h:commandLink id="locnum" action="#{appAction.getWormingRecord}" title="Update Worming History Record">
    <h:outputText value="#{bbr.dateWormed}">
    <f:convertDateTime pattern="MM/dd/yyyy"/>
    </h:outputText>
    <f:param name = "recordId" value ="#{bbr.id}" />
    </h:commandLink>
    </h:column>
    <h:column>
    <f:facet name="header" >
    <h:outputText escape="false" value="Vaccination Type" />
    </f:facet>
    <h:outputText value="#{bbr.type}" styleClass="readOnly" />
    </h:column>
    <h:column>
    <f:facet name="header" >
    <h:outputText value="Vaccination Dosage" />
    </f:facet>
    <h:outputText value="#{bbr.dosage}"styleClass="readOnly"/>
    </h:column>
    </h:dataTable>
    Hope this helps

  • JSF Data Table in Sequential Level

    Hi All,
    Assume i have a List and it contains 2 records. I need to display in Sequential Level in Frontend,
    When i use the below code
    <h:dataTable value="#{emp.detailList}" var="empVO" headerClass="tableheader" columnClasses="tablecell">
    <h:column>
              <f:facet name="header">
              <h:outputText value="Emp No" />
              </f:facet>
              <h:outputText value="#{empVO.empNumber}" />
    </h:column>
    <h:column>
              <f:facet name="header">
              <h:outputText value="First Name" />
              </f:facet>
              <h:outputText value="#{empVO.firstName}" />
    </h:column>
    </h:dataTable>
    The above is showing as Tabel Level
    Tabel Level Mean
    Emp No First Name Last Name Age
    10 Rahul Jain 30
    20 Sunil Shetty 32
    In above all column are showing in Table Header and multiple row are displaing in Tabel Level.
    Sequential Level Mean
    Emp No 10 First Name Rahul
    Last Name Jain Age 30
    Emp No 20 First Name Sunil
    Last Name Shetty Age 31
    I want to display the above by using <h:dataTable>
    Anybody can help me in this regards.
    Thanks and Regards
    Srikanth

    Can you tell me sample code how to do that.
    Assume I have 1 arraylist and arraylist contains the 2 Value Object (it mean 2 records)
    1 Value object will have emp no, first name, last name and age
    and 2 value object will also have emp no, first name, last name and age
    both are different data.
    Thanks and Regards
    Srikanth

  • JSF Data Table

    I have the following requirement.
    I have DataTable with the following columns. |Status | Institution | State | Country | Major |Degree | Date
    status is drop down with values " ' ','completed', 'attended' " (note one of the values is empty).
    Each of these columns in binded to a corresponding UIInput data type
            private UISelectOne grad_status = new UISelectOne();
         private HtmlInputText institution = new HtmlInputText();
         private HtmlInputText state = new HtmlInputText();
         private HtmlInputText country = new HtmlInputText();
         private HtmlInputText major  = new HtmlInputText();
         private HtmlInputText degree = new HtmlInputText();
         private HtmlInputText date  = new HtmlInputText();I want the user to either enter the fields in the row completely or leave them alone.
    I have written an EL for each fields required attribute. The problem here is that it is not being evaluated for UISelectOne. but for the rest of the fields it is being evaluated correctly.
    required="#{!empty AP4b.institution.value  || !empty AP4b.state.value || !empty AP4b.country.value || !empty AP4b.degree.value ||!empty AP4b.major.value || !empty AP4b.date.value}"
    requiredMessage="status required"
    required="#{!empty AP4b.grad_status.value  || !empty AP4b.state.value || !empty AP4b.country.value || !empty AP4b.degree.value ||!empty AP4b.major.value || !empty AP4b.date.value}"
    requiredMessage="Institution required"
         required="#{!empty AP4b.grad_status.value  || !empty AP4b.institution.value ||      !empty AP4b.country.value || !empty AP4b.degree.value ||!empty AP4b.major.value || !empty AP4b.date.value}"
         requiredMessage ="State required"
    required="#{!empty AP4b.grad_status.value  || !empty AP4b.institution.value ||      !empty AP4b.state.value || !empty AP4b.degree.value ||!empty AP4b.major.value || !empty AP4b.date.value}"
      requiredMessage = "Country required"
      required="#{!empty AP4b.grad_status.value  || !empty AP4b.institution.value || !empty AP4b.state.value || !empty AP4b.degree.value ||!empty AP4b.country.value || !empty AP4b.date.value}"
      requiredMessage="Major required"
       required="#{!empty AP4b.grad_status.value  || !empty AP4b.institution.value || !empty AP4b.state.value || !empty AP4b.major.value ||!empty AP4b.country.value || !empty AP4b.date.value}"
      requiredMessage="Degree required"
       required="#{!empty AP4b.grad_status.value  || !empty AP4b.institution.value || !empty AP4b.state.value || !empty AP4b.degree.value ||!empty AP4b.country.value || !empty AP4b.major.value}"
      requiredMessage="Date required"Help is really appreciated.
    Regards
    Sandeep
    Edited by: sgatl2 on Aug 5, 2008 8:25 AM
    Edited by: sgatl2 on Aug 5, 2008 8:32 AM

    Hi,
    For the same dataTable above I have a boolean check box for which required should be set to false if the user has checked it.
    I have the following expression language but I cannot get it evaluated properly. Please suggest where I am doing the error.
    <h:dataTable value="#{AP4b.al_AcadAttend}" var="dt" id="dt1" styleClass="entryTable_nomargin"
                                  binding="#{AP4b.table}" headerClass="tableHeading3"
                                  columnClasses="tableData2,tableData2,tableData2,tableData2,tableData2,tableData2,tableData2">
              <h:column id="col_status">
              <f:facet name="header">
                   <h:outputText value="Status" id="ot_status"></h:outputText>
              </f:facet>
                   <h:panelGrid columns="1" style="width:7em" id="pgrd_status">
                        <h:selectOneMenu value="#{dt.graduationStatus}"      binding="#{AP4b.grad_status}"
                                  id="grad_status" required="#{AP4b.delete.selected != true && (!empty AP4b.institution.submittedValue ||
                                  !empty AP4b.state.submittedValue || !empty AP4b.country.submittedValue ||
                                  !empty AP4b.major.submittedValue ||     !empty AP4b.degree.submittedValue ||
                                  !empty AP4b.date.submittedValue)  }" requiredMessage="Status Required">
                                  <f:selectItems id="fselStatusItems" value="#{AP4b.gradStatusItems}" />
                        </h:selectOneMenu>
                        <h:message for="grad_status" errorClass="requiredMessage" id="msg_gstatus">
                        </h:message>
                   </h:panelGrid>
              </h:column>
                   <h:column id="col_inst">
                        <f:facet name="header">
                             <h:outputText value="Institution" id="ot_inst"></h:outputText>
                        </f:facet>
                        <h:panelGrid columns="1" style="width:13em" id="pgrd_inst">
                             <h:inputText value="#{dt.institution}" maxlength="60" size="20"
                                  style="width:13em" id="institution" binding="#{AP4b.institution}"
                                  required="#{AP4b.delete.selected != true && (AP4b.grad_status.localValue == 'Graduated' || AP4b.grad_status.localValue  =='Classes Taken'||
                                  !empty AP4b.state.submittedValue || !empty AP4b.country.submittedValue ||!empty AP4b.major.submittedValue ||
                                  !empty AP4b.degree.submittedValue || !empty AP4b.date.submittedValue)  }"
                                  requiredMessage="Insitution Required">
                             </h:inputText>
                             <h:message for="institution" errorClass="requiredMessage" id="msg_inst"></h:message>
                        </h:panelGrid>
                   </h:column>
                   <h:column id="col_state">
                        <f:facet name="header">
                             <h:outputText value="State" id="ot_state"></h:outputText>
                        </f:facet>
                        <h:panelGrid columns="1" style="width:2em" id="pgrd_state">
                             <h:inputText value="#{dt.state}" id="state" binding="#{AP4b.state}"
                                  style="width:2em"
                                  required="#{AP4b.delete.selected != true &&  (!empty AP4b.grad_status.localValue  || !empty AP4b.institution.value ||
                                  !empty AP4b.country.submittedValue || !empty AP4b.major.submittedValue ||
                                  !empty AP4b.degree.submittedValue || !empty AP4b.date.submittedValue)}"
                                  requiredMessage="State Required">
                             </h:inputText>
                             <h:message for="state" errorClass="requiredMessage" id="msg_state"></h:message>
                        </h:panelGrid>
                   </h:column>
                   <h:column id="col_country">
                        <f:facet name="header">
                             <h:outputText value="Country" id="ot_country"></h:outputText>
                        </f:facet>
                        <h:panelGrid columns="1" style="width:7em" id="pgrd_country">
                             <h:inputText value="#{dt.country}" id="country" style="width:7em"
                                  binding="#{AP4b.country}" required="#{AP4b.delete.selected != true && (!empty AP4b.grad_status.localValue  ||
                                  !empty AP4b.institution.value || !empty AP4b.state.value ||!empty AP4b.major.submittedValue
                                   || !empty AP4b.degree.submittedValue || !empty AP4b.date.submittedValue)  }"
                                  requiredMessage="Country Required">
                             </h:inputText>
                             <h:message for="country" errorClass="requiredMessage" id="msg_country"></h:message>
                        </h:panelGrid>
                   </h:column>
    </h:dataTable> Thanks Sandeep

  • Display Tag use with JSF Data Tables

    Has Anyone got to work the Display tag with JSF
    I have got soo far to display the table by using Display tag with JSF dataTables but unable to have a link or command button to navigate
    Theirs a online hack available for the same .....But i am unable to get to run it
    Has anybody got the solution for the same

    Hi ,
    I am trying to do the same but I have no success.
    My code is
    <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
         xmlns:f="http://java.sun.com/jsf/core"
         xmlns:h="http://java.sun.com/jsf/html"
         xmlns:jsp="http://java.sun.com/JSP/Page"
         xmlns:c="urn:jsptld:http://java.sun.com/jstl/core"
         xmlns:display="urn:jsptld:http://displaytag.sf.net">
    <jsp:directive.page contentType="text/html; charset=UTF-8" />
    <jsp:directive.page import="fi.tavutaito.hibernate.User,java.util.*,org.displaytag.tags.TableTag" />
         <h:dataTable value="#{sessionScope.users}" var="user" style=""/>
         <display:table name="sessionScope.users" class="" id="user">
              <display:column property="username"/>
              </display:table>
    </html>
    where users is a List Obj in the session. In output I receive just this page.
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:c="urn:jsptld:http://java.sun.com/jstl/core" xmlns:display="urn:jsptld:http://displaytag.sf.net">
    <jsp:directive.page contentType="text/html; charset=UTF-8"></jsp:directive.page>
    <jsp:directive.page import="fi.tavutaito.hibernate.User,java.util.*,org.displaytag.tags.TableTag"></jsp:directive.page><table style="">
    <tbody>
    <tr>
    </tr>
    <tr>
    </tr>
    </tbody>
    </table>
         <display:table name="sessionScope.users" id="user">
              <display:column property="username"></display:column>
              </display:table>
    </html>
    It seems to that display tags are not parsed...
    Do zou have an idea?
    Thanks a lot in advance
    beppoz

  • JSF data table and commandLink

    Hi,
    Is the bug of using commandLink with datatable resolved for a request scope bean. The google search is not very helpful.
    I have already tried tomhawk datatable with preserveDataModel. Unfortunatelyy does not work.
    I am sure in JSF 2.0 it would have been resolved. Any help appreciated.
    Thanks
    Edited by: bhavin_monani on Nov 12, 2009 7:09 AM

    Problem #1
    I think commandLink will always forward all requests back to the JSF controller. If you do not have any actionListener on your commandLink (or do not use a backing bean's method as the action), you can use <h:outputLink> instead.
    Problem #2
    <link rel="stylesheet" href="<%=request.getServletPath()%>/css/coa.css"/>or
    <t:stylesheet path="/css/coa.css" />where <t:stylesheet> is from MyFaces Tomahawk.

  • JSF Data Table help

    I have the following dataTable columns
    Completed Status | Course |Period| YearCompleted | Course Name and Number| Institution | Credits | Grade |
    suppose there are 10 rows underneath this table. I want the user to fill all the fields except grade. I achieve this by placing the "required = true" attribute underneath every field. But for Grade I have special situation.
    The Completed Status is a drop down. with 2 options - 'completed', and 'in progress'.
    If Completed Status = completed then the Grade is required,
    but if completed status = 'in progress' then grade is not required.
    How can I achieve this. If I can do this only at the backing bean then how can I get the missed row id of the field "Grade" and put a new FacesMessage.
    Any help is really appreciated.
    Regards
    Sandeep

    Thanks for the suggestion and I tried implementing the same.I dont know why i am not getting the <h:message.> for Grade.am I missing any configuration settings.
    I have the following info for completedStatus and Grade.
    <h:dataTable value="#{Bean.ArrayList}" var="dt" styleClass="entryTable"  border="1" >
    <h:column headerClass="tableHeading2">
    <f:facet name="header">
    <h:outputText value="Completed Status"></h:outputText>
    </f:facet>
    <h:panelGrid columns="1">
    <h:selectOneMenu id="status" value="#{dt.completedStatus}" required="true" requiredMessage="Please select a status">
    <f:selectItems value="#{AP3b.statusItems}"/>
    </h:selectOneMenu>
    <h:message for="status" style="color:red" ></h:message>
    </h:panelGrid>
    </h:column>and for Grade I put the following code
    <h:column headerClass="tableHeading2">
    <f:facet name="header">
    <h:outputText value="Grade"></h:outputText>
    </f:facet>
    <h:panelGrid columns="1">
    <h:inputText value="#{dt.grade}" maxlength="4" size="4"  id ="grade"
    required = "#{dt.completedStatus eq 'completed'}" requiredMessage="Grade is required"></h:inputText>
    <h:message for="grade"  style="color:red"></h:message>
    </h:panelGrid>
    </h:column>Regards
    Sandeep

  • JSF 1.1 performance, especially UIData and Data Table

    Hi,
    Does anybody have any JSF 1.1 (Sun reference implementation) performance experiences to share? I am currently looking at the data table component and the use of UIData. Initial observations are an incredible amount of memory is churned during rendering the data table, with the following classes culprits:
    java.util.HashMap$KeyIterator
    javax.faces.component.UIComponentBase$ChildrenListIterator
    java.util.AbstractList$Itr
    char[]
    java.util.ArrayList
    javax.faces.component.UIComponentBase$FacetsMapKeySetIterator
    javax.faces.component.UIComponentBase$FacetsMapKeySet
    javax.faces.component.UIComponentBase$FacetsMapValues
    javax.faces.component.UIComponentBase$FacetsAndChildrenIterator
    To render 50 rows with 10 columns (each column only having a simple outputText component) I'm seeing 1.3Mb memory churned and 0.8 seconds processing time.
    To rener 100 rows with same columns and components I'm seeing nearly 2Mb churned and 2 seconds processing time.
    UIData.setRowIndex is a large culprit.
    I'm really after finding out your experiences on JSF performance and its scalability.
    Any help here is appreciated.
    Thanks - JJ

    Hi,
    Does anybody have any JSF 1.1 (Sun reference implementation) performance experiences to share? I am currently looking at the data table component and the use of UIData. Initial observations are an incredible amount of memory is churned during rendering the data table, with the following classes culprits:
    java.util.HashMap$KeyIterator
    javax.faces.component.UIComponentBase$ChildrenListIterator
    java.util.AbstractList$Itr
    char[]
    java.util.ArrayList
    javax.faces.component.UIComponentBase$FacetsMapKeySetIterator
    javax.faces.component.UIComponentBase$FacetsMapKeySet
    javax.faces.component.UIComponentBase$FacetsMapValues
    javax.faces.component.UIComponentBase$FacetsAndChildrenIterator
    To render 50 rows with 10 columns (each column only having a simple outputText component) I'm seeing 1.3Mb memory churned and 0.8 seconds processing time.
    To rener 100 rows with same columns and components I'm seeing nearly 2Mb churned and 2 seconds processing time.
    UIData.setRowIndex is a large culprit.
    I'm really after finding out your experiences on JSF performance and its scalability.
    Any help here is appreciated.
    Thanks - JJ

  • Use table component without data provider

    Since it is very difficult to solve the browser "BACK" button problem caused by my data provider, I decide not to use data provider to populate the table.
    Does anyone know some sample code about playing around with the table component without using data provider?
    Thanks in advance,

    Unfortunately, Table Component from basic category does not work with out Data Provider. But Data Table component from standard section works with out data provider. But it does not have the frills and whistles of basic table component.
    - Winston
    http://blogs.sun.com/roller/page/winston?catname=Creator

  • Adding custom column to a Data Table (bound to database table)

    Hello,
    I've added an additional "Output Text" column to an existing "Data Table" component, which is pulling a database table and rendering it. It's actually called "OutputText5". What I want to do, is set the value of the "OutputText5" dynamically, depending on a Date comparison between the system date, and one of the currentRow field values, which is actually an Oracle Date data type. basically I'm trying to use the Date.after() comparison and put different content in there depending on true or false evaluation.
    Seems simple enough .. but.. I'm trying to do this without using vim and JSP Beans (how I'd usually do this). I'm not experienced with JSF components and how this would be done using JSC - can I iterate over currentRow or something inside the "Page1.java" source? Is there an easy way to create dynamic value bindings like this in Data Table components in general? Maybe using expressions in "OutputText5" properties or something? I figure I should ask about doing this the easy way, before I spend lots of time and start teaching myself bad habbits.
    I apologise in advance if this is a repeat post. I spent some time searching ,but came up empty handed.
    Thanks in advance.
    David Basham

    Hi David,
    Here's some ideas to try on:
    http://swforum.sun.com/jive/thread.jspa?forumID=123&threadID=49459
    hth,
    v

  • ETA for a JavaFX Data Table / Grid

    Hi All,
    Some of the posts in the forum seem to suggest that there is a JavaFX Data Table component in the works , any word on when we'll see something ? I'm looking for the following features ..
    * Columns of different widths
    * Columns that the user can resize at runtime
    * Columns that the user can reorder at runtime
    * Columns that can be filtered(removed) at runtime
    * Customizable column headers
    * Ability to use a custom cell rendered for any column to display data other than text
    * Support for sorting the data by clicking on a column
    * Pagination
    * Runtime column selection
    * Background row highlighting
    Until a JavaFX data table arrives is it a recommended approach to use something like JXTable ?
    Thanks
    --gordon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    Hi,
      I think this is because of memory overflow.
      You can create two screens for this, in on screen (Overview) screen, restrict the data selection.
      In detail screen display the data.
    With regards,
    Vamsi

Maybe you are looking for