问题标签 [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.
hibernate - Grails4:dynamicUpdate:多对一外键即使不脏也会更新
我正在 application.groovy 中使用此配置:
领域类:
引导程序.groovy:
- 在浏览器中单击以查看子项
- 单击编辑
- 不要更改任何内容并单击更新
- 在控制台中,您将看到,该注释很脏,但正在为版本、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]
--
为什么会这样?如何禁用不必要的更新?外键将随着另一个简单属性的每次更新而更新,即使它们保持不变?
(嗯……我没有看到上传小示例项目的按钮……)
非常感谢你,祝你有美好的一天:-)
grails-4 - 如何在 Grails 4 集成测试中注入服务器端口?
从 Grails 4 开始,无法再通过这种方式在 grails 集成测试中获取服务器端口:
在测试中获取服务器端口的正确方法是什么?
grails - 如何在默认的 grails 4 应用程序中查看 h2 数据库
我正在使用 Grails 4 构建一个全新的应用程序,并且在对应用程序进行更改时尝试查看我的数据库,但我无法使用通常的 URL 访问 h2 数据库http://localhost:8080/dbconsole
。
我查看了文档,在“4.4.4 数据库控制台”下它说我应该能够使用上面的 URL 访问它。它还说它默认启用,这让我更加困惑。
创建应用程序后,我没有更改任何内容,application.yml
并且只创建了一个域类,这是我唯一更改的内容。我也尝试过更改serverURL
文档中 4.4.4 中提到的内容,但我已将其更改回默认值。
这是我的datasource
和dev environment
从application.yml
grails-orm - org.grails.datastore.mapping.model.IllegalMappingException:不存在的映射属性
我在 grails 4 中遇到上述错误。
此代码在 grails 2.5.6 中运行良好。
grails - 缺少 grails 4 groovy 的日期增强方法
在以前的 grails 版本中,我可以使用这里的 java.util.Date 的 groovy 增强版本。
升级到 grails 4 后,所有这些方法都不会在 java.util.Date 上抛出方法签名。不知何故,这些时髦的添加并没有被采纳。
grails - 根目录的grails 4 url映射不起作用
在 url 映射中:
如果用户使用带有根 url 的索引,它会很好地重定向。
控制器 + 动作重定向很好。
但是根(“/”)本身并不会重定向到主控制器。
我也在使用弹簧安全
我错过了什么简单的事情?
grails - Grails 4 升级 - 错误消息无法找到单个主类
我目前正在从 Grails 3.3.10 升级到 Grails 4.0.0。尝试运行我的项目时,出现以下错误:
无论我尝试在我的 IDE 还是终端中运行该项目,我都会收到相同的错误。
我卸载并重新安装了 grails 4.0.0,但仍然出现错误。尝试./gradlew clean
,重建,killall -9 java
但仍然得到错误。
这在以前的 Grails 版本中不是问题。不知道是什么导致了 Grails 4 的问题,也不知道如何解决。任何对解决方案的见解将不胜感激。
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
那么,我错过了什么或者它是一些已知的问题/功能?
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,但仍然没有运气。
grails - 在 Grails 4 中使用 Micronaut HTTP 客户端进行参数编码
在 Grails 4.0.1 应用程序中,我使用 Micronaut HTTP 客户端调用外部 Web 服务。参数会自动 url 编码为 UTF-8。如何强制编码为 Windows-1252?