Datatable (h:dataTable) is not populated with data despite getAll() method 
returns ResultSet with table rows ( Using Tomcat 7 + MySQL 5.5 + 
mysql-connector-java-5.1.18 )
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: MYFACES-3518
                 URL: https://issues.apache.org/jira/browse/MYFACES-3518
             Project: MyFaces Core
          Issue Type: Bug
          Components: General
    Affects Versions: 2.1.6
         Environment: Windows 7 64bit
Tomcat 7.0.26
myfaces-2.1.6
JRE 6
MySQL 5.5
mysql-connector-java-5.1.18
            Reporter: Sagi Kovaliov


Hello, when I use the following BeanClass and xhtml page, Datatable is not 
populated with data, despite the method getAll() returns ResultSet that 
contains customer names.
Code line System.out.println(crs.getString("Name")) iterates through the 
ResultSet and prints customer names from customer table before the ResultSet is 
being returned to h:dataTable component. This is what I get in Tomcat log:

..........

*******************************************************************
*** WARNING: Apache MyFaces-2 is running in DEVELOPMENT mode.   ***
***                                         ^^^^^^^^^^^         ***
*** Do NOT deploy to your live server(s) without changing this. ***
*** See Application#getProjectStage() for more information.     ***
*******************************************************************

29/03/2012 22:19:57 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
29/03/2012 22:19:57 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
29/03/2012 22:19:57 org.apache.catalina.startup.Catalina start
INFO: Server startup in 4706 ms
29/03/2012 22:19:58 org.apache.myfaces.util.ExternalSpecifications 
isUnifiedELAvailable
INFO: MyFaces Unified EL support enabled

Start of Debug

William Dupont
William Dupont

End of Debug

This is the ManagedBean:

package com.corejsf;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.annotation.Resource;
import javax.faces.bean.*; 
import javax.sql.DataSource;
import javax.sql.rowset.CachedRowSet;


@ManagedBean
@RequestScoped

public class CustomerBean {
        
        @Resource(name="jdbc/Sufa") private DataSource ds;
          
    public ResultSet getAll() throws SQLException {
      
      Connection conn = ds.getConnection();
          try { 
        
        Statement stmt = conn.createStatement();        
        ResultSet result = stmt.executeQuery("SELECT * FROM customers");        
 
        CachedRowSet crs = new com.sun.rowset.CachedRowSetImpl();         
        crs.populate(result);
        
        System.out.println("Start of Debug");
        
        while(crs.next()) {
          System.out.println(crs.getString("Name"));
            }
        
        System.out.println("End of Debug");
               
        return crs;
        
      } finally {
            conn.close();
      }
    }
}


This is xhtml page:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml";
        xmlns:f="http://java.sun.com/jsf/core";
        xmlns:h="http://java.sun.com/jsf/html";
        xmlns:ui="http://java.sun.com/jsf/facelets";>
<h:body>
<h:form>

<h:dataTable value="#{customerBean.all}" var="customer">
  <h:column>
    <f:facet name="header">#{msgs.nameHeader}</f:facet>
      #{customer.Name}
  </h:column>
</h:dataTable>

</h:form>
</h:body>
</html>

It's important to mention that the same code works perfect when I change JSF 
implementation to mojarra-2.1.7.
It's seems like a bug.

Thanks a lot

Sagi



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to