Witam,
ucze się JSF+Hibernate i mam problem z uzyskaniem rekordów z DB do h:dataTable. Otóż zaimportowałem do DB dane z pliku .csv - dane w tabeli istnieją, następnie dodałem kilka testowych wpisów.
Kiedy próbuje te wszystkie dane wyświetlić za pomocą dataTable niestety te dane, które były importowane zostawiają puste kolumny, natomiast te które sam ręcznie dodałem - są wyświetlane.
Nie rozumiem gdzie może być problem, a wygląda to tak:
Tak wygląda moj plik .xhtml gdzie te dane wyświetlam:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head>
<title>Test - Get from db</title>
</h:head>
<body>
<h:form>
<h:button id="backToIndex" value="Back To Index" outcome="index" />
<h:dataTable value="#{activityLogM.activityLogList}" var="actLog"
border="1" styleClass="order-table" headerClass="order-table-header"
rowClasses="order-table-odd-row,order-table-even-row">
<h:column>
<f:facet name="header">
<h:outputText value="a_id" />
</f:facet>
<h:outputText value="#{actLog.a_id}" />
</h:column>
.........
</h:dataTable>
</h:form>
</body>
</html>
Taka metoda odpowiada za pobranie tych danych, jest to getter dla pola listy: activityLogList
public List< ActivityLog > getActivityLogList() {
Session session = HibernateUtil.getSessionFactory().openSession();
this.activityLogList = session.createCriteria( ActivityLog.class ).list();
return activityLogList;
}
Naturalnie activityLogM jest zarejestrowane w faces-config.xml
Chciałbym wiedzieć co robię zle i jak to naprawić, będę wdzięczny za pomoc.