[
https://issues.apache.org/jira/browse/MYFACES-3518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13241993#comment-13241993
]
Leonardo Uribe commented on MYFACES-3518:
-----------------------------------------
Thanks to Sagi Kovaliov for the example, it helps a lot solving this issue
quickly.
> 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
> Assignee: Leonardo Uribe
> Fix For: 1.1.10, 1.2.12, 2.0.13, 2.1.7
>
>
> 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