gpt4 book ai didi

mongodb - 升级 Grails MongoDB GORM 打破了对列表属性的预测

转载 作者:IT老高 更新时间:2023-10-28 13:05:18 26 4
gpt4 key购买 nike

我正在使用带有投影的条件来获取我的帐户域上的标签列表。像这样:

def tags = Account.createCriteria().list { 
projections { property("tags") }
}

我的帐户域:

class Account {
static mapWith = "mongo"
List<Tag> tags
...
static embedded = ['tags']
}

BuildConfig.groovy

// using grails 2.3.8
plugins {
runtime ":hibernate:3.6.10.17"
compile ":mongodb:2.0.1"

这一直有效,直到我将用于 grails 的 MongoDB GORM 插件从 2.0.1 升级到 3.0.1

    compile ":mongodb:3.0.1"

现在我看到以下错误...

The class [java.util.List] is not a known persistent type.
at org.grails.datastore.mapping.core.AbstractSession.retrieveAll(AbstractSession.java:723)
at org.grails.datastore.mapping.mongo.query.MongoQuery$AggregatedResultList.initializeFully(MongoQuery.java:1601)
at org.grails.datastore.mapping.mongo.query.MongoQuery$AggregatedResultList.size(MongoQuery.java:1764)

为什么这之前可行,但现在却失败了?我不想重写所有现有的查询来使用 mongoDB 的聚合框架。

最佳答案

你可以试试平常的

grails clean
grails refresh-dependencies

同时检查插件的更新版本。

另一种选择是切换到一个月前发布的这个 mongo 插件,它应该与 GORM for Hibernate 兼容

'org.grails.plugins:mongodb:6.0.0.M2'

关于mongodb - 升级 Grails MongoDB GORM 打破了对列表属性的预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25633748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com