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

performance - Grails 2.0 的性能真的那么低吗?

我对基于 JVM 堆栈的 WEB 开发有点新手,但未来的项目将特别需要一些基于 JVM 的 WEB 引擎。所以我开始寻找一些基础来快速制作东西,然后转而尝试 Grails。书上的东西看起来不错,但是由于很长的启动时间(grails run-app)给我留下了深刻的印象,我决定测试它在负载下是如何工作的。这里是:

  • 测试应用程序:按照这里的一些说明从地面制作它(假设您已经安装了 Grails 和 Tomcat,需要 2 分钟):

    _http://grails.org/Quick+Start

  • 测试用例(带有 Apache 基准测试 - 带有 Apache httpd - _http://httpd.apache.org):

    ab.exe -n 500 -c _http://localhost:8080/my-project/book/create
    (注意:这只是在样式容器中显示 2 个输入字段)

  • 硬件:Intel i5 650 (4Core*3.2GHz) 8GB Ram & Win Server 2003 x64

结果是..

Grails:32请求/秒

(只有 32 Req/Sec 和 100% 的 CPU 饱和度,这太低于我对此类硬件的期望了)

...接下来 - 我尝试将它与类似的虚拟 JSF 应用程序进行比较(我在这里拿了一个:_http://www.ibm.com/developerworks/library/j-jsf2/ - 查找“带有 JAR 文件的源代码", 里面有\jsf-example2\target\jsf-example2-1.0.war),

  • 测试用例:ab.exe -n 500 -c 10 _http://localhost:8080/jsf/backend/listing.jsp

结果是..

JSF:400 请求/秒

... 最后是原始虚拟 JSP(仅供参考)

Jsp:8000请求/秒:

结果:

...

我错过了什么吗?... Grails 应用程序可以运行得更好吗?

PS:我尝试使用 VisualVM 分析我正在运行的 Grails 应用程序,但得到了无限循环的消息,例如...

最后,应用程序在几分钟后停止工作 - 所以,看起来分析 Grails 不是良好诊断的选择。

更新- - - - - - - - - - - - - - - - - - - - - - - - - - - -

首先,我必须管理,是的,我需要 RTFM - 即“grails run-app”不是运行 Grails 进行性能测量的正确方法。在编译 WAR 并将其部署到 Tomcat 之后,性能并没有那么低——它只是很低。下面的指标是针对 1 个用户的并发性(我只是想检查一个线程中框架的 MAX 性能并且没有重负载),在阅读其他相关帖子时,我来到了“http://stackoverflow.com/ questions/819684/jsf-and-spring-performance-vs-poor-jsp-performance”并决定检查那里提到的 Apache Wicket - 它的性能也包括在内。

用例是: - ab.exe -n 500 -c 1 _http://localhost:8080/... - 服务器是 vFabric tcServer 开发版中的 Tomcat7,“insight”在后台运行

所以......无论如何,Grails 有问题。我已经使用 tcServer 进行了一些分析(感谢 Karthick) - 看起来它只能跟踪“基于 Spring”的操作,Grails 的内部堆栈跟踪如下(对于 2 个请求 - 注意:指标不稳定 - 我打赌准确性tcServer 远非完美,但只能用于信息)

PS:Grails 中性能不佳的根本原因可能是底层的“Spring”库,将更详细地检查这一点。

0 投票
1 回答
1310 浏览

spring - 在 Grails 2.0 下的过滤器中“未找到线程绑定请求”

我正在开发一个带有过滤器的 Grails 插件,代码如下:

非常标准的 Java EE 过滤器,它扩展了 spring 的GenericFilterBean. 它是由SpringSecurityUtils.registerFilter %NAME%, %POS%(它是 spring 安全扩展)注册的

升级到 Grails 2.0 后,我开始chain.doFilter()在线收到一些奇怪的错误:

请注意,一切正常String url = request.requestURI.....。并且显示的 url 是有效的。

这个错误不可预测的问题:(有时过滤器工作正常,有时会抛出异常,我不知道是什么问题,以及我必须做什么来解决它。可能这取决于bean初始化的顺序,但我'我不确定


更新:发现是因为resources插件。删除此插件后错误消失。不确定这是不是最好的方法。

0 投票
2 回答
973 浏览

grails - Grails 2.0 CreateCriteria私有属性无法查询

我正在尝试将我的应用程序升级到 Grails 2.0,但我遇到了以下问题。我有一个带有公共 getter 的私有域属性。我想在 createCriteria 中查询这个属性,它会返回我:“Could not resolve property ...”异常,即使 getter 是公开的。我已经看到了一个 Jira 错误http://jira.grails.org/browse/GRAILS-8498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel 但它仍然无法正常工作。Grails 1.3.7 运行良好。

我的代码是这样的:域类

询问

问题可能是“保留”属性名称成为 grails 中的保留关键字,因为它似乎对于不同名称的其他属性有效......

0 投票
3 回答
17861 浏览

mysql - 如何使 MySQL 在 grails 2.0 上运行

Grails 2.0 似乎有一些变化DataSource.groovy,我似乎无法像在 1.3.7 中那样运行 mysql

我这样做了,grails install-dependency mysql:mysql-connector-java:5.1.16而不仅仅是将 .jar 转储到 lib 中。我听说这就是这些天的方法。

这是我在我的DataSource.groovy

当然将用户名、密码和 dbNamer 更改为有效条目......我做错了什么?是否有涵盖设置 mysql 的 grails 2.0 教程?

我得到这个怪物错误:

0 投票
0 回答
549 浏览

java - 升级到 Grails 2.0 后的 NPE

我刚刚升级到 Grails 2.0,我在 run-app 上看到了下面的错误。它表示 NPE 在一条简单的线上

我已经在互联网上搜索了一段时间,我发现有些人在使用各种插件时遇到了问题,但不是特别是这个 NPE 问题。使用组件扫描器加载我的 Spring bean 似乎是某种问题,但我很难理解为什么它不再工作了。在 Grails 1.3.7 -> 2.0 升级之前,它运行良好。

如果有任何 Grails 或 Spring 3.1 专家可以为我指出正确的方向,我将不胜感激。谢谢。

这是错误:

可能相关:我的资源.groovy

0 投票
0 回答
933 浏览

grails - Grails 2.0 and xfire plugin exception

I created simple Grails 2.0 service exposed with xfire plugin. With every call to this plugin I get exception, but WS is working fine. Is it normal? Only because of that server's log files gets huge.

The same error is with CXF plugin 0.7.0

Versions

Grails commands:

Service:

Grails Exception:

Full stacktrace:

0 投票
1 回答
484 浏览

grails - Grails 2.0、资源插件和根托管

我一直在将 Grails 1.3.7 项目升级到 Grails 2.0。在我进行集成(第一次非本地部署)之前,一切都很顺利。问题的要点在于,资源插件似乎总是将应用程序名称添加到它生成的静态 CSS/JS URL 之前,而不管为环境指定的 grails.serverURL 或 grails.app.context 是什么。奇怪的是图像资源是使用适当的 URL“/static/foo.png”托管的,但 CSS/JS 文件试图作为“/AppName/static/foo.js”提供。在 ResourceTagLib 中跟踪这个问题,这最初看起来像是 Resource Plugin 中的一个问题,但我不想下结论。

我们的集成环境是使用 Apache 代理设置的,将所有流量从“/”传递到“:8080/AppName”托管在 Tomcat 上。因此,“http://int.sitename.com”的所有流量都在访问运行在 Tomcat 上的应用程序。以前,在 1.3.7 中,grails.serverURL="http://int.sitename.com" 是获取正确提供资源所需的全部内容。

有谁知道解决此问题的方法,或者这看起来像资源插件中存在的错误。

0 投票
1 回答
210 浏览

hibernate - Grails 2.0 Hibernate Annotation - 不工作

我使用文档中给出的休眠注释示例创建了简单的 grails。

我正在使用脚手架。

单击新书时的异常如下

0 投票
10 回答
25907 浏览

jquery - 如何在 Grails 中包含 jquery.js?

我有一个使用grails create-app. 在我的 HTML 和 GSP 文件中,我试图包含jquery.js. 我尝试了以下所有方法但均未成功:

前两个<script>标签导致 404 Not Found(使用 Firebug 验证)。该<g:javascript>标记导致不包含任何内容(使用查看源代码验证)。

在我的 Grails 应用程序的主页上,它表明已安装 jquery 1.7.1(在“INSTALLED PLUGINS”下)。

Grails 中包含 jquery .js 文件的正确方法是什么?

跟进: .GSP 文件:

结果如下 HTML 源代码:

请注意没有包含 jquery.js。

跟进2:

我正在使用以下方式创建我的应用程序grails create-app

0 投票
2 回答
1779 浏览

testing - Grails 2.0 集成测试污染?

所以我有一个小型集成测试,总共包含 5 个测试。仅运行该测试会导致所有测试都通过。但是,运行我的整个测试套件会导致 5 个测试中的 4 个测试失败。

我刚刚从 1.3.7 升级到 grails-2.0,并且从 hsqldb 切换到 h2。

有没有人指出我应该朝哪个方向寻找以解决这个(测试污染)问题?

领域模型

领域模型

集成测试: