我在从服务器读取数据后使用领域来存储数据,但是当我尝试将其存储在领域中时,我得到“java.lang.IllegalArgumentException:'value'不是有效的托管对象”
这是我在领域中存储数据的方法的代码
public void addOrdersToLocalDB(Order order,List<Product> products) {
realmAsyncTask = myRealm.executeTransactionAsync(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
Order localOrder = realm.createObject(Order.class, order.getId());
localOrder.setName(order.getName());
localOrder.setTimestamp(order.getTimestamp());
localOrder.setDate(order.getDate());
localOrder.setCost(order.getCost());
localOrder.setProductNums(order.getProductNums());
localOrder.setTime(order.getTime());
Log.d("orders_data", "realm order : " + order.getName());
RealmList<Product> localProducts = new RealmList<>();
for (Product product : products){
Log.d("orders_data", "realm product : " + product.getName());
Product localProduct = realm.createObject(Product.class, product.getId());
localProduct.setName(product.getName());
localProduct.setBarCode(product.getBarCode());
localProduct.setCurrentQuantity(product.getCurrentQuantity());
localProduct.setStatus(product.getStatus());
localProduct.setOldUnitPrice(product.getOldUnitPrice());
localProduct.setImage(product.getImage());
localProduct.setNeededQuantity(product.getNeededQuantity());
localProduct.setTotalPrice(product.getTotalPrice());
localProduct.setDescription(product.getDescription());
localProduct.setUnitPrice(product.getUnitPrice());
localProduct.setTimeStamp(product.getTimeStamp());
localProducts.add(product);
}
我搜索了该错误并在此处检查了此问题,但仍然收到错误,希望有人可以提供帮助吗?
largeQ
相关分类