嵌入式数组文档中的Morphia Mongodb更新失败

嵌入式数组文档中的Morphia Mongodb更新失败,mongodb,morphia,Mongodb,Morphia,我是Morphia的新手,正在尝试更新嵌入文档中的一个字段。这是目前的结构 class A { List<B> BList; } class B { String field; } 现在我想更新所有匹配查询的B.field。 我创建了以下更新操作 UpdateOperations updateOps = datastore.createUpdateOperations(A.class); 我的过滤器查询很好,比如说过滤器返回A中的所有元素 updateOp

我是Morphia的新手,正在尝试更新嵌入文档中的一个字段。这是目前的结构

class A {

    List<B> BList;
}

class B {
    String field;
}
现在我想更新所有匹配查询的B.field。
我创建了以下更新操作

 UpdateOperations updateOps = datastore.createUpdateOperations(A.class);
我的过滤器查询很好,比如说过滤器返回A中的所有元素

 updateOps.set("Blist.$[].B.field", "newtext");
当调试器到达此语句时,它会显示
org.mongodb.morphia.query.ValidationException:无法针对`

我甚至添加了disableValidation,但它没有运行

但是,如果我使用位置运算符,它可以正常工作,但在运行datastore.update()时失败。 抛出这个错误

 Write failed with error code 28 and error message 'Cannot create field B.

有人能建议如何在morphia的第二级进行此更新吗?

您的morphia版本是什么?我使用1.3.2版,这对我来说非常好。另外,在您试图修改的文档中,字段B是否可用?
 Write failed with error code 28 and error message 'Cannot create field B.