Java 非托管RealObject不能完全持久化

Java 非托管RealObject不能完全持久化,java,android,realm,Java,Android,Realm,我有一个这样的模型: public class Album extends RealmObject { @PrimaryKey @Required private String _id; @Required private String title; private String description; public String get_id() { return _id; } public void

我有一个这样的模型:

public class Album extends RealmObject {
    @PrimaryKey
    @Required
    private String _id;
    @Required
    private String title;
    private String description;

    public String get_id() {
        return _id;
    }
    public void set_id(String _id) {
        this._id = _id;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }

}
我从服务器获取数据,并将JSON转换为Album对象。我尝试通过以下方式将对象持久化到领域3.1.3中:

realm.executeTransactionAsync(new Realm.Transaction() {
        @Override
        public void execute(Realm realm) {
            realm.insertOrUpdate(album);
        }
    });
但问题是
\u id
title
字段被复制到数据库中,但
description
字段始终为空。 但是,如果我创建一个新对象并将所有字段从原始对象复制到新对象,则所有内容都将完全保留。下面是它的工作原理:

    realm.executeTransactionAsync(new Realm.Transaction() {
            @Override
            public void execute(Realm realm) {
                Album tmpAlbum = new Album();
                tmpAlbum.set_id(album.get_id());
                tmpAlbum.setTitle(album.getTitle());
                tmpAlbum.setDescription(album.getDescription());
                realm.insertOrUpdate(tmpAlbum);
            }
        });

有没有其他方法可以持久化整个对象而不从原始对象创建副本?

调试它,并检查当您试图将其保存到域中时,
album.description
是否不为空。我检查了,
album.description
不为空。当我复制该值并将其设置为
tmpAlbum
对象时,一切正常。只有
description
为空时,才会发生这种情况,因此。。。。