我有以下课程:
@PersistenceCapable
public class User implements Serializable {
@PrimaryKey
private long userId;
@Persistent(defaultFetchGroup = "true")
private Set<String> deviceIds;
@Persistent(defaultFetchGroup = "true")
private long schoolClass;
@Persistent(defaultFetchGroup = "true")
private Set<Long> subjects;
}
当我使用包含进行查询时,我总是得到一个空列表
PersistenceManager pm = PMF.get().getPersistenceManager();
Query q = pm.newQuery(User.class);
q.setFilter("subjects.contains(subject)");
List<User> userList = (List<User>) q.execute(Arrays.asList(new Long(13)));
q.closeAll();
我究竟做错了什么?数据存储中有两个两个用户,其主题集中的长值为 13。所以查询应该返回两个结果。
当我调试此查询时,我看到当我在 q.execute() 之后单击 userList 时出现 InvocationException。