问题标签 [grails-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
89 浏览

hibernate - Grails4:dynamicUpdate:多对一外键即使不脏也会更新

我正在 application.groovy 中使用此配置:

领域类:

引导程序.groovy:

  1. 在浏览器中单击以查看子项
  2. 单击编辑
  3. 不要更改任何内容并单击更新
  4. 在控制台中,您将看到,该注释很脏,但正在为版本、father_id 和 mother_id 发送更新 sql - 认为父亲 ID 和母亲 ID 没有被更改。

更新前 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

记录脏?错误的

脏属性:[]

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

2019-08-07 13:04:03.936 调试 --- [nio-8080-exec-4]

org.hibernate.SQL :

2019-08-07 13:04:03.938 TRACE --- [nio-8080-exec-4] ohtype.descriptor.sql.BasicBinder:绑定参数 [1] 作为 [INTEGER] - [1]

2019-08-07 13:04:03.938 TRACE --- [nio-8080-exec-4] ohtype.descriptor.sql.BasicBinder:绑定参数 [2] 作为 [INTEGER] - [1]

2019-08-07 13:04:03.938 TRACE --- [nio-8080-exec-4] ohtype.descriptor.sql.BasicBinder:绑定参数 [3] 作为 [INTEGER] - [2]

2019-08-07 13:04:03.939 TRACE --- [nio-8080-exec-4] ohtype.descriptor.sql.BasicBinder:绑定参数 [4] 作为 [INTEGER] - [3]

2019-08-07 13:04:03.939 TRACE --- [nio-8080-exec-4] ohtype.descriptor.sql.BasicBinder:绑定参数 [5] 作为 [INTEGER] - [0]

--

为什么会这样?如何禁用不必要的更新?外键将随着另一个简单属性的每次更新而更新,即使它们保持不变?

(嗯……我没有看到上传小示例项目的按钮……)

非常感谢你,祝你有美好的一天:-)

0 投票
1 回答
31 浏览

grails-4 - 如何在 Grails 4 集成测试中注入服务器端口?

从 Grails 4 开始,无法再通过这种方式在 grails 集成测试中获取服务器端口:

在测试中获取服务器端口的正确方法是什么?

0 投票
1 回答
2039 浏览

grails - 如何在默认的 grails 4 应用程序中查看 h2 数据库

我正在使用 Grails 4 构建一个全新的应用程序,并且在对应用程序进行更改时尝试查看我的数据库,但我无法使用通常的 URL 访问 h2 数据库http://localhost:8080/dbconsole

我查看了文档,在“4.4.4 数据库控制台”下它说我应该能够使用上面的 URL 访问它。它还说它默认启用,这让我更加困惑。

创建应用程序后,我没有更改任何内容,application.yml并且只创建了一个域类,这是我唯一更改的内容。我也尝试过更改serverURL文档中 4.4.4 中提到的内容,但我已将其更改回默认值。

这是我的datasourcedev environmentapplication.yml

0 投票
0 回答
271 浏览

grails-orm - org.grails.datastore.mapping.model.IllegalMappingException:不存在的映射属性

我在 grails 4 中遇到上述错误。

此代码在 grails 2.5.6 中运行良好。

0 投票
1 回答
1410 浏览

grails - 缺少 grails 4 groovy 的日期增强方法

在以前的 grails 版本中,我可以使用这里的 java.util.Date 的 groovy 增强版本

升级到 grails 4 后,所有这些方法都不会在 java.util.Date 上抛出方法签名。不知何故,这些时髦的添加并没有被采纳。

0 投票
3 回答
571 浏览

grails - 根目录的grails 4 url​​映射不起作用

在 url 映射中:

如果用户使用带有根 url 的索引,它会很好地重定向。

控制器 + 动作重定向很好。

但是根(“/”)本身并不会重定向到主控制器。

我也在使用弹簧安全

我错过了什么简单的事情?

0 投票
1 回答
2019 浏览

grails - Grails 4 升级 - 错误消息无法找到单个主类

我目前正在从 Grails 3.3.10 升级到 Grails 4.0.0。尝试运行我的项目时,出现以下错误:

无论我尝试在我的 IDE 还是终端中运行该项目,我都会收到相同的错误。

我卸载并重新安装了 grails 4.0.0,但仍然出现错误。尝试./gradlew clean,重建,killall -9 java但仍然得到错误。

这在以前的 Grails 版本中不是问题。不知道是什么导致了 Grails 4 的问题,也不知道如何解决。任何对解决方案的见解将不胜感激。

0 投票
2 回答
263 浏览

grails - Grails4 GORM Domains - 连接表为空

我离开 Grails 有一段时间了,所以我尝试创建具有一些基本域关系(一对多、多对多)的演示 rest-api 应用程序并遇到了一些奇怪的问题。简而言之,我有 4 个域类,如下所示:

我正在尝试在 bootrap.groovy 中插入一些演示数据(使用多种不同的方法),但是应该进入联合表的数据不会持久化(空)。例如,即使使用 cascade-create,'edge' 记录也会被持久化(例如从 boook 创建的类别),但是它们之间的连接表中没有数据):

在此处输入图像描述

Bootstrap.groovy 使用不同的方法插入记录:

我尝试了 H2 和 MariaDb,结果是一样的。github 上提供了完整的项目:https ://github.com/zbubric/grails4-rest-sample

那么,我错过了什么或者它是一些已知的问题/功能?

0 投票
1 回答
176 浏览

grails - grails 4 sessionRegistry为空

升级到 grails 4, sessionRegistry.getAllPrincipal() 始终为空。

resources.groovy 中的原始 spring bean 是

由于这不再有效,我尝试将 resources.groovy 更新为

所有这些 bean 都来自 org.springframework.security.web.authentication.session 包。

我也为 grails.plugin.springsecurity.providerNames 添加了名称

DaoAuthenticationProvider 由自定义身份验证提供程序扩展。登录和注销工作正常,但主体永远不会在升级后的应用程序中注册。我是否需要手动注册它们(sessionRegistry.registerNewSession())?

有旧答案说使用 grails install-templates 然后编辑 src/templates/war 中的 web.xml。但是在 grails 4 中, install-templates 没有生成 war/web.xml

我尝试将它添加到 /WEB-INF/web.xml,但仍然没有运气。

0 投票
0 回答
192 浏览

grails - 在 Grails 4 中使用 Micronaut HTTP 客户端进行参数编码

在 Grails 4.0.1 应用程序中,我使用 Micronaut HTTP 客户端调用外部 Web 服务。参数会自动 url 编码为 UTF-8。如何强制编码为 Windows-1252?