引发的异常是NullPointerException:无法在null对象上获取属性“userId”

时间:2013-11-25 14:50:34

标签: playframework

我很擅长玩框架。我试图让我的列表显示在HTML页面中,但代码不起作用。

这是代码 -

public static void allUser(){

    Query query=JPA.em().createQuery("FROM DBUser");
    List users=query.getResultList();
    for(int i=0; i<users.size();i++){
        DBUser user=(DBUser) users.get(i);
        System.out.println(user.getId()+" : "+user.getUsername()+
                " : "+user.getCreatedBy()+" : "+user.getCreatedDate());
        }
    render(users);
}

sysout确认我的列表不为空。

HTML页面是 -

<h1>List of all Users in the database</h1> 
<table>
    <tr>
        @for( user <- users){
            <td>${user.userId}</td><td>${user.username}</td><td>${user.createdBy}</td><td>${user.createdDate}</td>
        }
      </tr>
</table> 

我对scala很新。所以,如果我使用正确的语法或者不在HTML页面上检索列表元素,请告诉我。

3 个答案:

答案 0 :(得分:0)

我认为必须

<h1>List of all Users in the database</h1> 
<table>
    <tr>
        @for( user <- users){
            <td>@user.userId</td><td>@user.username</td><td>@user.createdBy</td><td>@user.createdDate</td>
        }
    </tr>
</table> 

答案 1 :(得分:0)

在您System.out user.getId() user.getUserId()中,但在模板中,您引用的是id

如果您的字段被称为<td>${user.id}</td> ,那么您的模板必须是:

{{1}}

答案 2 :(得分:0)

终于找到了有效的代码......感谢大家的评论:)

%{
     for(RegisterUser in users) { 
}%
     <tr>
        <td>${RegisterUser.userId}</td><td>${RegisterUser.username}</td>
    </tr>
%{
     }
}%