2013-07-06 22 views
0

我想从数组列表中填充数据表。在搜索完成之后,我发现我需要在jsf页面中将值属性设置为arraylist。这里是我的管理bean的相关部分:无法从JSF中的Arraylist填充数据表

@ManagedBean(name = "customer") 
@SessionScoped 
public class Customer implements Serializable { 
    private String identityNumber; 
    private String password; 

    private List<Account> accounts; 
} 

我的数据表中定义的JSF页面:

<h:form> 
    <h:dataTable id="accountsTable" value="#{customer.accounts}"></h:dataTable> 

的问题是,它提供了一个错误说“未知属性:帐户”。它可以看到身份号码和密码属性,但无法找到帐户属性。任何人都可以告诉我为什么,并帮我修复它?

感谢

编辑:我解决了这个错误,但现在还不是填充表。代码如下:

<h:form> 
     <h:dataTable id="accountsTable" value="#{customer.accounts}" var="account"> 
      <h:column> 
       <f:facet name="header">Account Number</f:facet> 
        #{account.accountNumber} 
      </h:column> 
     </h:dataTable> 
    </h:form> 
+0

你确实拥有公共的getter和setters for'accounts'吧? –

+0

哦,我忘了添加他们,谢谢,我会尝试 – yrazlik

+0

@VikasV谢谢你的工作,如果你想你可以发表一个答案,我接受 – yrazlik

回答

2

为您的accounts列表定义获取器和设置器。从这个错误看来,unknown property: accounts,accounts不可用于显示。

public List<Account> getAccounts() 
{ 
     return accounts; 
} 

public void setAccounts(List<Account> accounts) 
{ 
     this.accounts = accounts; 
} 
+0

谢谢,现在没有错误,但表是没有填充。我会编辑这个问题,你可以再看一遍吗? – yrazlik

+0

当然。请提出一个不同的问题。这就是事情在这里的工作.. –

+0

它看起来像数组看起来是空的。我将尝试找到我们如何使用会话变量来填充数据表 – yrazlik