问题标签 [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 投票
2 回答
80 浏览

grails - g:formatDate java.sql.Date 类实例的问题

Java 7 - java.sql.Date - 使用 java.util.Date 类的 toInstant 方法。

Java 8 - java.sql.Date - 覆盖 toInstant 方法,现在抛出UnsupportedOperationException异常。

grails-gsp-plugin v3.3.2 - DefaultGrailsTagDateHelper - 能够格式化 java.sql.Date 类实例。

grails-gsp-plugin v4.0.0 - DefaultGrailsTagDateHelper -无法格式化 java.sql.Date 类实例,因为date.toInstant()它正在抛出UnsupportedOperationException(按照 java 8 代码预期)。

并且根据文档 Grails 4 is not compatible with Java 1.7

那么现在预计g.formatDate不允许 java.sql.Date 类实例吗?或者它是插件中的一个错误?

0 投票
1 回答
440 浏览

spring-boot - 如何在 Grails 4 集成测试中禁用 Spring Security?

我有一个 grails 3 应用程序,包括 spring security,我最近将其升级到 grails 4。

我的application.yml包括以下内容:

为什么这在 Grails 4 中不起作用?什么是好的替代解决方案?

Grails 4 似乎忽略了这个配置。当我运行集成测试时,我收到一条 403 错误消息:

Could not verify the provided CSRF token because your session was not found.

似乎启用了弹簧安全性,并且正在使用SecurityFilterAutoConfiguration,这通常不包括在我的应用程序中。

更新

我正在使用以下依赖项:

更新 2:

在我的调试器中,我发现 spring security core 插件实际上禁用了。插件类中的以下代码被执行:

...但是,我仍然收到 CSRF 过滤器错误,因此 Spring Security 必须以某种方式自行配置。

更新 3:

CSRF 过滤器由ManagementWebSecurityConfigurerAdapter使用默认配置设置。

我尝试将以下内容添加到resources.groovy

这并没有解决问题。尽管我的匿名 WSCA bean 正在构建中,但 Spring 仍在使用 MWSCA 默认 bean。

0 投票
1 回答
93 浏览

groovy - Grails4在编译groovy时内存不足

在我的工作区中添加更多控制器后,我的 grails4 应用程序出现内存不足错误。

FAILURE:构建失败并出现异常。

  • 出了什么问题:任务 ':cira:compileGroovy' 执行失败。

    超出 GC 开销限制

到目前为止,我的 grails 应用程序中总共有 41 个控制器文件,同时添加了 42 个,如果我删除它并使用现有的 41 个控制器运行,我会在编译时遇到此错误。

如果您对此有任何解决方案,请告诉我。

提前致谢!

0 投票
1 回答
321 浏览

unit-testing - grails 中的 Micronaut 声明式客户端:我如何模拟它?

在对 Grails 服务进行单元测试时,模拟声明式 REST 客户端的正确方法是什么?

细节

我在我的 Grails 4 应用程序中使用 Micronaut 的声明式 HTTP 客户端。

我尝试使用 Ersatz 对客户端进行单元测试,但几天后我无法让它工作: 如何在 grails 测试环境中配置 Micronaut @Client?

现在,我正在尝试对使用它的服务进行单元测试,使用标准方法来模拟依赖项:

这给了我一个NoSuchBeanDefinitionException.

我通过反复试验发现声明式客户端无法与def myRestClient其他 Grails bean 一样使用。一定@Autowired。_

0 投票
1 回答
272 浏览

grails - 圣杯 4.0.2。无法解析名称为“grailsDispatcherServlet”的 servlet 中名称为“index”的视图

我使用以下代码创建了一个新的 grails 应用程序

我修改了ApplicationController并为其添加了命名空间,如下所示:

目录下有一个index.gson文件views/application/

我使用运行此设置grails run-app并将我的浏览器指向http://localhost:8080

它抛出以下异常:

但是,如果我修改控制器代码使用render,一切正常。

grails -v 的输出 Grails 版本:4.0.2
JVM 版本:1.8.0_171 操作系统:macOS High Sierra

0 投票
2 回答
1217 浏览

grails - Quartz 在 Grails4 中不起作用,依赖问题无法编译

我正在使用 grails4 在调度程序依赖项中出现错误:任何人都让我知道调度程序的正确依赖项

}

并且还尝试了这个:

}

两者都无法编译:

grails 运行应用程序 | 解决依赖关系。请稍等...

| 正在运行应用程序...

FAILURE:构建失败并出现异常。

  • 出了什么问题:任务“:compileGroovy”执行失败。

    org/quartz/JobExecutionContext

  • 尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。

  • 在https://help.gradle.org获得更多帮助

10 秒内构建失败 | 错误无法启动服务器(使用 --stacktrace 查看完整跟踪)

0 投票
1 回答
230 浏览

grails - Grails 4 application.groovy:是否允许变量声明?导致从 micronaut 报告的错误

我们正在从 Grails 2 迁移到 Grails 4。非常简化,我们的 application.groovy 是这样的:

这会导致错误,抱怨未创建变量“someVar”。

在将代码从 Config.groovy 和 DataSource.groovy 移动到 application.groovy 之后,我正在迁移一个大型应用程序,这样的事情已经结束。

是否有无法在 application.groovy 中声明和使用变量的解决方法?谢谢

0 投票
1 回答
16 浏览

grails-4 - Grails4 webapp 不再启动

今天我介绍了对 Grails4 webapp(在安全链映射中)的一些更改,但发现 webapp 不再启动,所以我隐藏了更改。

隐藏更改没有帮助。我跑了grails clean,但它也没有帮助。我已签出上一次提交 - 没有帮助。我禁用了弹簧安全 - 它没有帮助。我已经删除buildout目录- 没有运气。试图通过 Intellij 和控制台运行 - 两者都被卡住了。

问题是 web 应用程序没有抛出任何异常,它只是在启动阶段卡在:

在此处输入图像描述

如果我从头开始创建一个新的 grails webapp - 它开始很好。

如何调试它/解决它?

0 投票
0 回答
110 浏览

spring - Grails 集成测试默认使用 H2 创建数据源,而不是来自 TEST 环境的数据源配置

到目前为止,我已经尝试了所有可用的建议。

问题:我正在尝试为基于 Grails 的应用程序编写集成测试用例,但是在运行测试时,它默认选择 H2 db 来创建数据源,而不是使用 application.yml 中的测试环境中的数据库配置

使用的命令: grails -Dgrails-env=test tesp-app -integration

版本: grails=4.0.1 gorm=7.0.2.RELEASE

应用程序.yml

0 投票
1 回答
723 浏览

hibernate - Hibernate 5.4 PostgisDialect 已弃用?

由于 Grails 3 迁移到 Grails 4,必须将 Hibernate 5.1.5 升级到最新的 Hibernate 5.4.14(包括 hibernate-entitymanager、hibernate-spatial、hibernate-ehcache、hibernate-core...)。
JVM:OpenJDK 11
org.springframework.boot 2.1.12.RELEASE
数据库:PostgreSQL 10.4 安装了扩展 Postgis 2.4。
根据文档,休眠方言应该与

应用程序.yml:

但是在 Hibernate 5.4.14 中,该类是空的并被标记为已弃用。

其他最新文档说明了实现PostgisPGNNDialect引用旧 postgis 版本(1.3 及以下)的类之一。
可以实现什么休眠空间方言来Geometry成功映射实体类的字段?
Geometry字段被注释掉时,不会出现错误,否则会出现:

以下链接下完全相同的错误:How to get deserialized JTS Geometry field in Grails 4?

编辑[20.04.2020]完整的堆栈跟踪: