问题标签 [grails-3.0.9]

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 回答
582 浏览

grails - 在 Grails 3.0.9 中向 src/groovy 注入服务

我正在尝试创建一个 EndPoint 文件。所以我创建了一个文件名ServerEndPointDemo.groovy

我尝试使用此代码从服务调用方法:

这是我的服务:

但是在我尝试运行这段代码之后,我收到了这个错误:

有人知道如何从服务调用方法到文件src/groovy吗?

0 投票
1 回答
582 浏览

grails - 将 grails 2 插件导出到 grails 3 时出错

我一直在尝试将 grails spring-security-ui 插件升级到 grails 3。如文档中所述,我已将所有依赖项复制到 build.gradle。

该文件看起来像这样。

当我尝试安装插件时,出现这样的错误

我已经阅读了编写插件的文档。export 是一个非常有效的条目。为什么我会收到这样的错误。

0 投票
0 回答
141 浏览

mongodb - 测试中带有@ToString注释的Stackoverflow异常

我在 Grails 3 应用程序中使用 MongoDB 数据库,在进行一些单一测试时遇到了一些问题。

这是我的域类

我还使用 build-test-data 插件来简化测试的数据创建,如果我尝试以下类似的操作,我会收到 StackoverflowException:

但是,如果我从域类中删除 de @ToString() 注释并实现我自己的 toString 方法,则测试运行正常。任何想法为什么会发生这个stackoverflowException?它可能与 ObjectId 字段有关吗?

0 投票
0 回答
109 浏览

eclipse - Grails 3.1.0_M2 - Eclipse 火星错误

首先,我使用 command 创建了一个示例 Grails 应用程序grails create-app helloworld。然后我添加了插件bootstrap-frameworkSpring-Security-Core(感谢 Burt Beckwith 对 spring-security-core 的帮助)。之后,grails run-app从 cmd 运行应用程序 ( ) 可以正常工作 ( localhost:8080/)。BootStrap.groovy运行良好,用户和角色被正确创建,登录工作......一切似乎都很好。

然后我将项目导入 Eclipse Mars,将 facelets 和Dynamic Web Modulefacet 添加到项目中。我还将它与Targeted Runtimes Apache Tomcat 8.0.28和相关联JDK 1.8.0_60

我能够Debug on server编写代码BootStrap.groovy。但是Run on server/Debug on serverlocalhost:8080/helloworld/. localhost:8080/helloworld/login/auth显示登录对话框,虽然我注意到 css 文件没有正确加载,并且在输入用户登录后,抛出另一个异常。似乎从 Eclipse 运行,应用程序路径helloworld/未正确设置,并且无法解析视图,尽管可以使用其完整路径显示登录对话框(没有图像和 css 样式)。

提前致谢。

进入localhost:8080/helloworld/或登录后抛出的异常是:

0 投票
2 回答
2552 浏览

grails - Grails 3 单元测试:如何在 Grails 3 中进行 mockFor、createMock 和需求?

我正在将应用程序从 Grails 2.4.4 升级到 Grails 3.0.9,但我找不到任何有关如何在 Grails 3 中执行 mockFor、createMock 和需求的信息。

我曾经做过这样的事情:

但看起来“mockFor”已经消失了,即使从文档中也是如此。Grails 3 的方法是什么?

更新:

我不想将使用 Grails 'mockFor' 样式编写的数千个测试重写为 Spock 交互样式,所以我想出了这个解决方案:

  • 用新的 MockFor() 替换 mockFor()
  • 用 proxyInstance() 替换 createMock()
  • 将对 fooBean.fooService = fooService.proxyInstance() 的调用移至需求之后

没有进一步的更改,这在 Grails 3 中“正常工作”。

0 投票
0 回答
669 浏览

json - Grails 3 深度 JSON 编组器

我已经为我的域对象定义并注册了一些自定义编组器。如果单独使用,只渲染一个实例,工作正常,但是当我返回一个包含这些实例数组的地图时,问题就来了。在这一刻,我的自定义编组器没有被调用。

这是我的编组之一:

Ans 例如,这是我从控制器返回的内容:

在以前的 grails 版本中,我知道有深度编组器,但我无法为 grails 3 找到类似的东西。

我也尝试为 List 实现一个自定义编组器,但我不确定我应该返回或写什么。

0 投票
1 回答
107 浏览

ajax - Grails 中的 AJAX 搜索

Grails3.x中是否有支持 AJAX 搜索的插件?它应该在当前页面中加载搜索结果,而不是打开新页面/视图。

0 投票
1 回答
1391 浏览

ajax - 使用 Grails 的简单 AJAX 示例

我很陌生Grails,我正在尝试了解 AJAX 在 Grails 中的工作原理。为此,我尝试从此处修改乘法 AJAX 示例,以便我的应用程序在页面上显示带有 AJAX 的输入字符串。(为了澄清这一点:用户输入例如“foo”,页面应在搜索字段下显示“foo”)

到目前为止,这是我的代码:

我的index.gsp模板包含一个输入表单,并应显示在表单中键入的字符串:

我的_searchForm.gsp模板包括搜索表单:

我的_searchResultForm.gsp模板将显示所有结果(在我的情况下只是搜索字符串)

我的SearchControllerwhich 将获取搜索字符串并返回相同的字符串:

我的问题是,在我在输入表单中写入内容并按下发送按钮后,什么也没有发生。没有错误,但它也不会在输入表单下显示输入字符串。

您可能想知道我为什么要尝试使用 AJAX 来执行此操作:我的目的是实现 AJAX 搜索。当 AJAX 部分工作时,将搜索逻辑添加到控制器应该不是问题。

0 投票
0 回答
530 浏览

grails - Grails 3.0.9 和 Spring Security

我将 Spring Security 添加到 Grails 3.0.9 并使用 Spring Security。

我运行应用程序,我有这个错误:

当我停用 Spring Security 时,这是项目运行。请帮我。阿迪巴克

0 投票
2 回答
1573 浏览

grails - Grails 3 - 在 Bootstrap.groovy 中读取类路径资源

我正在将 Grails 2.5 应用程序迁移到 Grails 3.0.9,并且在读取grails-app/init/BootStrap.groovy.

在 Grails 2.5.x 中,ClassPathResource当将资源文件放入与BootStrap.groovy

在 Grails 3 中,当我使用grails run-app. 所有资源均取自src/main/resources. 但是,如果我使用 IntelliJ 中的 Spring Boot Application(位于/grails-app/init/a/b/Application.groovy)类启动应用程序,BootStrap.groovy 将不再找到资源。

有谁知道在BootStrap.groovy使用启动应用程序时如何在 Grails 3.0.9中访问这些文件Application.groovy