java - org.datanucleus.sco.backed.ArrayList 无法转换为 java.util.Set

标签 java google-app-engine gwt arraylist google-cloud-datastore

自 4 天前以来,在随机的短时间内,我部署的应用程序抛出此错误:

org.datanucleus.sco.backed.ArrayList cannot be cast to java.util.Set

我们正在使用 GWT 2.4/Java 1.7(我们最近从 1.6 迁移到 1.7)

它发生在检索或持久化一个带有字符串集的实体时:

import java.util.HashSet;
import java.util.Set;
...
@PersistenceCapable(identityType = IdentityType.APPLICATION, detachable = "true")
public class DbAccount {
    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;
...
    @Persistent
    private Set<String> accounts;
...
    public DbAccount(SerAccount account) throws Exception {
        ...
        this.accounts= new HashSet<String>();
        ...
        key = KeyFactory.createKey(DbCuentas.class.getSimpleName(), this.id);
    }
}

我检查了我的整个项目以查找对 org.datanucleus.sco.backed.ArrayList 的引用,但它不存在。

有什么想法吗?

最佳答案

这听起来可能很愚蠢,但是您是否尝试过使用 List 而不是 Set

再次查看文档后,除了 List 之外,我无法从 Google 中找到任何包含 Collection 的示例。

阅读您的问题,无论您做什么,JPA datanucleus impl 似乎确实在使用他们自己的 ArrayList 实现。我不知道为什么问题会随机发生......

关于java - org.datanucleus.sco.backed.ArrayList 无法转换为 java.util.Set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22307734/

相关文章:

java - java中默认可以并发执行实例方法吗?

java - Google Cloud Storage API 和可恢复上传返回 null Location header

java - 日期框无法在 iOS 7 上运行

尝试将 Siena 与 Play Framework 一起使用时出现 java.lang.AbstractMethodError

java - 等同于 GWT 中的 request.getRemoteUser()?

java - Google Web 工具包示例应用程序

Java 是对原子方法的调用 Atomic

java - 对自定义类 arraybuffer 进行排序并获取 scala 中的子集

java - 无法加载 JDBC 领域的组

java - 在灵活的环境中部署bigtable helloworld不起作用