我有以下课程:
@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;
}
当我使用contains进行查询时,我总是得到一个空列表
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。