Managed bean method
public ObservableList<JurnalEntry> getJurnalEntries() {
try {
ObservableList<JurnalEntry> List = JurnalEntriesGateWay.GetJurnalEntries();
return List;
} catch (SQLException | ParseException ex) {
return null;
}
}
and jurnalEntry class
public class JurnalEntry {
public int ID;
public String Comment;
public LocalDateTime DateAndTime;
public SectionData SectionData;
public ArrayList<EntryData> Entries;
public JurnalEntry(int ID, String Comment, LocalDateTime DateAndTime, SectionData sectionData, ArrayList<EntryData> Entries) {
this.ID = ID;
this.Comment = Comment;
this.DateAndTime = DateAndTime;
this.SectionData = sectionData;
this.Entries = Entries;
}
public String getComment() {
return Comment;
}
public String getDate() {
return JDateTime.toStringDate(DateAndTime);
}
public String getTime() {
return JDateTime.toStringTime(DateAndTime);
}
public ArrayList<EntryData> getEntries() {
return Entries;
}
}
which contain ArrayList<EntryData> Entries;
and entryData class
public class EntryData {
public int ID;
public int SubAccountID;
public int MainAccountID;
public BigDecimal Value;
public String Description;
public EntryData(int ID, int SubAccountID, int MainAccountID, BigDecimal Value, String Description) {
this.ID = ID;
this.SubAccountID = SubAccountID;
this.MainAccountID = MainAccountID;
this.Value = Value;
this.Description = Description;
}
public String getSubAccountName() throws SQLException {
return DTables.ACCOUNTS.GetAccountName(SubAccountID);
}
public String getMainAccountName() {
return AccountsGateWay.GetMainAccount(MainAccountID).getAccountName();
}
public BigDecimal getValue() {
return Value;
}
public String getStringValue() {
return AccountModel.BalanceAsString(Value.doubleValue());
}
public enum ValueType {
Debit, Credit, Zero
}
public ValueType getValueType() {
switch (Value.compareTo(BigDecimal.ZERO)) {
case 0:
return ValueType.Zero;
case 1:
return ValueType.Debit;
default:
return ValueType.Credit;
}
}
}
My jsp code
<p:dataScroller value="#{jurnalEntries.jurnalEntries}" var="jurnalEntry" chunkSize="10" mode="inline" scrollHeight="500">
<f:facet name="loader">
<p:commandButton type="button" value="المزيد" icon="ui-icon-circle-triangle-s"/>
</f:facet>
<div class="ui-g">
<div class="ui-g-2 JurnalEntryDebitValue">
<ui:repeat value="#{jurnalEntry.entries}" var="sub">
<c:if test="#{sub.value gt 0}">
#{sub.value}
</c:if>
</ui:repeat>
</div>
<div class="ui-g-2 JurnalEntryCreditValue">
<ui:repeat value="#{jurnalEntry.entries}" var="sub">
<c:if test="#{sub.value lt 0}">
#{sub.value}
</c:if>
</ui:repeat>
</div>
<div class="ui-g-5">1</div>
<div class="ui-g-3">1</div>
</div>
</p:dataScroller>
the problem is value in <h:outputText value="#{ss.value}"></h:outputText>
is unknown property according to netbeans
and it actually don't produce the value and
ss refer to entries arraylist instead of refer to one of its items