Vaadin 瓦丁罐头';找不到BeanContainer';s Id属性

Vaadin 瓦丁罐头';找不到BeanContainer';s Id属性,vaadin,Vaadin,我正在尝试在填充BeanContainer后创建一个带有BeanContainer的表。但是,当我尝试运行它时,会收到以下错误消息: java.lang.IllegalStateException: Property RoomID not found 相关代码如下(房间可以在其中创建随机房间对象列表)。Room类有一个RoomID整数,虽然它是一个私有变量,但即使RoomID不是私有变量,代码也会产生相同的错误。我还确保r_列表实际上包含房间实例 BeanContainer<Intege

我正在尝试在填充BeanContainer后创建一个带有BeanContainer的表。但是,当我尝试运行它时,会收到以下错误消息:

java.lang.IllegalStateException: Property RoomID not found
相关代码如下(房间可以在其中创建随机房间对象列表)。Room类有一个RoomID整数,虽然它是一个私有变量,但即使RoomID不是私有变量,代码也会产生相同的错误。我还确保r_列表实际上包含房间实例

BeanContainer<Integer, Room> r_cont = new BeanContainer<Integer, Room>(Room.class);
r_cont.setBeanIdProperty("RoomID");

//fetches all rooms and adds them to the bean container
List<Room> r_list = rooms.getRooms();
for (Room room: r_list)
    r_cont.addBean(room);

属性名不是从持有它的实际变量中扣除的,而是从getter/setter中扣除的。这意味着它应该是
roomId
(参见示例)。如果您不确定所持有的属性,可以在容器上调试它:。

确定它不是
roomID
?请您再添加房间类的(相关部分)代码好吗?@cfrick我编辑了我的原始帖子,以包含房间类代码。无关:按照惯例,属性在java中以小写字符(roomID或roomID)开头命名。
package Entities;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="Room")
public class Room {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name="RoomID")
    private int RoomID;

    ...

    public int getRoomID(){
        return RoomID;
    }

    ...

}