问题标签 [grails-2.0]

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 投票
1 回答
2536 浏览

grails - Intellij11 / Grails 2.0.1 编译错误“BUG!在‘语义分析’阶段出现异常”

我正在从 grails 1.3.7 升级到 2.0.1,并且在 Intellij11 中看到错误。compile/run-app 从命令行正常工作并通过 Intellij 运行会产生以下错误。环境:Max OS X 10.6.8、Java 1.6.0_29、IntelliJ11、Grails 2.0.1

0 投票
1 回答
2152 浏览

validation - 服务层中的验证和验证错误

我从最新的 Java 开发中了解到,抛出 aRuntimeException并以面向方面的方式处理它是服务层错误处理的当前趋势。这意味着,如果出现任何问题,您只需抛出一个RuntimeException甚至更好的方法,让 Bean Validation 发挥作用。

优点是:你不会用try-catchif(entity.getName() == nil)检查阻塞你的代码。一切都在后台检查,这使您的代码更具可读性。

所以我想知道,这将如何在 Grails 中完成?当然,如果我使用.save(failOnError:true),我会得到一个不错的ValidationException. 但这会导致一个非常令人不快的默认错误页面,它根本不会提高 Web 应用程序的可用性。

我还需要把它try-catch放在控制器级别的块中吗?假设EntityService有一个方法,如下所示:

然后控制器会这样称呼它:

但是,当 Grails 在很多方面都是如此新的学校时,这似乎是相当老派的。有没有办法在RuntimeExceptions不阻塞代码的情况下处理得更好一点try-catch

0 投票
1 回答
234 浏览

grails-2.0 - Grails:为什么在显示模板中的字段周围使用“g:if”?

默认显示模板在每个域类字段周围放置一个 g:if test="${domainInstance?.fieldName}"。问题是具有“假”值的布尔字段不会显示在页面上。g:if 测试的目的是什么?

0 投票
1 回答
1054 浏览

sql-server - HibernateException:在 MS SQL 旧数据库上使用 Grails 2.0.2 的连接表出现缺失表错误

我试图在 Windows 7 上使用 Grails 2.0.1 建立多对多关系。我已经用尽了谷歌、这个网站和我的 Grails 书籍。没有任何效果。我正在连接到一个我拥有只读权限的 MS SQL Server 2005 数据库,是的 - 它是一个旧数据库。2 个单独的表中的所有内容都可以正常工作(视图 OK 和全部),但是当我尝试添加连接表代码时出现错误:

org.hibernate.HibernateException:缺少表:dbo.IN_USR_DRAWING_PRIV

该表确实存在,我可以使用 IntelliJ 的 IDEA 10.5 数据源视图和 MS SQL Server Management Studio 看到它。错误的相关部分是这个(如果需要,我可以发送更多......更多):

org.springframework.beans.factory.BeanCreationException:创建名为“transactionManagerPostProcessor”的bean时出错:bean初始化失败;嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建名为“transactionManager”的 bean 时出错:设置 bean 属性“sessionFactory”时无法解析对 bean“sessionFactory”的引用;嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建名为“sessionFactory”的 bean 时出错:调用 init 方法失败;嵌套异常是 org.hibernate.HibernateException: Missing table: dbo。IN_USR_DRAWING_PRIV

以下是 2 个域类:

}

}

这是连接表的架构:

GRAG 报告它具有所有 3 列的复合键,它与 DRAWING_ID 上的 FK 一起使用。

我尝试过的解决方案:

  1. 此代码(因“缺少表”异常而失败。
  2. 为连接表添加域控制器 - 结果相同。

任何提示/线索/解决方案表示赞赏。

0 投票
1 回答
957 浏览

jquery - 外部 Javascript 文件中控制器/操作的 URL

我有一个处理域模型 (A) 编辑的表单。这个领域模型也是hasMany其他领域模型(B)。所以为了给 A 添加新的 B,我想实现一个自定义的 AJAX 函数,它将一些输入字段的参数发送到控制器。

为此,我创建了以下 GSP:

并将以下一段 Javascript 添加到插件main.js加载的我的resources插件中。

所以,问题是:如何检索指向当前控制器和操作的 URL addB?如果可能的话,我不想对其进行硬编码或使用相对路径——因为 Grails 实际上提供了一些方法来检索链接。

使用remoteFunctionin Javascript 对我不起作用,因为我使用的是 jQuery。两者似乎都不能很好地协同工作。

我还发现了这篇关于 Grails、jQuery 和 AJAX 的博客文章 (http://alexduan.com/2011/02/17/grails-jquery-and-ajax/)。他在 javascript 部分中使用了一个变量。不幸的是,该contextPath变量没有被解析,因为 Javascript 不在 GSP 页面中,而是在外部文件中。

我能做些什么?

选项:

  • 将 Javascript 片段放在g:javascript页面内的标记中(有点丑,因为它有点内联)
  • 使用相对 URL(不是很健壮)
  • 开始工作(如何remoteFunction使用 jQuery?)
  • 还要别的吗?
0 投票
2 回答
1545 浏览

grails-2.0 - Grails 2.0 不能运行应用程序 &

&'s 添加到我执行 grails 的行似乎会破坏我尝试的任何计算机上的东西(到目前为止 ubuntu 11.10 和 cent 5.something)

例子

我得到这样的结果:

我究竟做错了什么?

0 投票
3 回答
2111 浏览

grails - 在 Grails 的 GORM 中添加更改监听器

我是 Grails 新手,我正在使用 Grails 2.0.1。我想为域类的对象更改添加持久性事件侦听器,因此我尝试了用户指南中给出的 Bootstrap.groovy 中的代码:

我收到以下错误消息:

错误 context.GrailsContextLoader - 执行引导程序时出错:没有这样的属性:类的 applicationContext:BootStrap

如何从 BootStrap 类中获取applicacionContext属性?或者文档是否过时并且有一种新的/更好的方法来添加域更改侦听器?

提前致谢。

0 投票
2 回答
881 浏览

grails - 从 grails 2.0 开始,Grails Melody 插件不再记录 SQL 调用

自从我将我的两个 grails 项目升级到 grails 2.0 grails-melody 停止记录 sql 调用。我尝试了不同版本的 grails-melody 插件,但我在所有版本中都遇到了相同的错误(即使是在迁移到 grails 2.0 之前工作的版本)。

我似乎找不到任何有用的谷歌搜索。如果我在 grails melody 插件上添加跟踪调试

我在日志中看到了这一点:

这个问题真的让我发疯..这里有人遇到过这个问题吗?如果是这样,您找到解决方案了吗?

更新:Grails 旋律甚至不适用于新创建的项目。我刚刚创建了一个新的 grails 项目(grails 2.0.0),其中包含一个域类和相应的控制器和视图。然后安装 grails-melody 插件。插入了一些数据。当我查看监控控制台时,没有记录任何 sql 数据。

图形 表

0 投票
1 回答
3339 浏览

grails - 在 Grails 2.0 中为域对象使用分配的 ID

我们将 Grails 与遗留数据库一起使用,我们需要控制如何将 ID 分配给域对象。

我们尝试过:

但我们得到了例外:

批量更新从更新 [0] 返回了意外的行数;实际行数:0;预期:1

我们还尝试创建自定义 ID 生成器:

但是在这种情况下,生成器似乎被忽略了,所以我们得到了错误

我不确定这些问题是否特定于 Grails 2。

任何帮助表示赞赏?

0 投票
1 回答
134 浏览

grails - 包含非法字符的 URL 未映射到 Grails 中的控制器

目前我在 grails 中有一个这样的 url 映射:

当传入请求如下时,这很好用:

但是,令牌可以包含像“/”这样的字符。我尝试对令牌值进行 urlencode,以便 '/' 变为 %2f:

但这并没有被 grails 匹配。

有没有办法做到这一点?