Grails 使用getter样式的方法名向域类添加业务逻辑

我正在尝试向grails域类添加一个方法,例如 class Item { String name String getReversedName() { name.reverse() } } 当我尝试使用grails控制台加载应用程序时,出现以下错误: 原因:org.springframework.beans.factory.BeanCreationException:创建名为“sessionFactory”的bean时出错:调用init方法失败;嵌套异常为org.hi

Grails Spring Security正在重定向到生产服务器上的本地主机

我有一个安装了SpringSecurityCore插件的grails应用程序。当地一切正常。我部署到一个临时服务器上,一切正常。我部署到了我们的生产服务器,它是我们的暂存服务器的镜像。我可以很好地访问未受保护的页面。但当SpringSecurity启动并尝试执行它的重定向时,它会重定向到localhost,而不是grails.serverURL 我将尽可能地提高日志记录率,并重新部署,看看我是否能了解任何事情。我会把我的发现贴在这里。如果有人以前有过这种经历,并且知道会发生什么,请告诉我。此外,

SpringSource:Grails插件

更多的时候,当我安装插件时,我无法识别它。 例如,使用Joda Time,我有一个变量LocalDateTime日期(我正在导入Joda库),eclipse表示无法解析LocalDateTime类,尽管应用程序可以工作。 或者我已经安装了grails icepush插件,但安装后taglib文件丢失 这是SpringSource的问题?您应该升级到SpringSource工具套件(STS),它是Eclipse与一套插件捆绑在一起的。它非常支持Groovy和Grails。2.5.0最近发布,它有一

Grails 正在检索域的GORM持久属性列表

获取与给定GORM域对象关联的持久属性列表的最佳/最简单方法是什么?我可以获得所有属性的列表,但此列表包含非持久性字段,如类和约束 目前,我正在使用它,并使用我创建的列表筛选出非持久属性的列表: def nonPersistent = ["log", "class", "constraints", "properties", "errors", "mapping", "metaClass"] def newMap = [:] domainObject.getPropert

GrailsGroupProperty和order。它是如何工作的?

我有这个域名: class Participation { ParticipationStatus status } class ParticipationStatus{ String name Date creationDate } 我创建一个查询: Participation.createCriteria().list{ createAlias("status","statusAlias") order "statusAlias.creationDate"

Grails:属性空错误

我有一个名为Modulo的域,它有一些属性,还有一个控制器,它有一个从模型创建对象并保存它的方法,当执行save shell时,会显示以下错误: 克拉斯群岛的第[{0}] 但是,如果我将约束设置为null为true,则会再次显示错误。我认为我不应该设置这个约束 该模型链接到一个mysql表,该表具有除id allow null之外的所有属性 我想我没有做错什么。有什么建议吗 域:模 class Modulo { String nombre String icon St

Grails 如何重定向到spring安全访问被拒绝的上一页?

我正在使用Grails和Spring安全性。控制器的某些方法用@Secured注释,当登录用户没有必要的角色时,我希望他被重定向到上次访问的页面,而不是/login/denied 我想真正的问题是如何访问最后一页,这样我就可以相应地将他从拒绝的方法中重定向出来 在JavaScript中有一种方法可以做到这一点,使用,但是我正在寻找一种在服务器端实现这一点的方法。也许您可以使用拦截器来存储视图的历史记录,然后使用accessDeniedHandler重定向到上一个也许您可以使用拦截器来存储视图的历

Grails设计用于从静态数据初始化域类

我有一些数据,stateNames,用来实例化目标国家的一个实例。现在,我只有一个国家,但每个国家的州名应该不同。用我的数据实例化Country实例的最佳方法是什么?我是grails的新手,如果有任何“最佳实践”或通用设计,我将不胜感激 我能想到的一个解决方案是使用BootStrap将Country的美国实例保存到数据库中。这种方法的缺点是什么 另一个解决方案是将数据保存在web app文件夹下的一个文件(xml?)中。如果我采用这种方法,那么控制器是否应该实例化Country的unitedSt

Grails控制器请求变量

在我们的Grails1.3.x应用程序中,我们曾经做过def user=request.userDefinedInAFilter,这不是在控制器方法中,而是在类的主体中,效果很好。现在,当升级到2.1.2时,在尝试创建bean时会出现以下错误: Caused by: groovy.lang.MissingMethodException: No signature of method: com.MyController.getRequest() is applicable for argument

Grails 将groovy应用程序连接到SQL server Express

我一直在遵循下面的教程,但肯定有一些重要的步骤,在这些步骤中,我没有掌握的知识正在被假定 下面是my datasource.groovy中的设置 username = "sa" password = "" url = "jdbc:sqlserver://localhost:1433;databaseName=Sandpit" driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver" dialect = "org.hiber

集成测试中的Grails作用域服务

我有一项服务需要范围“会话”。所以我就用 class MyService { static scope = "session" ... } 但在我的集成测试中,它没有正确连接: class MyServiceIntegrationSpec extends IntegrationSpec { def myService ... } 我总是会出错: 创建名为“myService”的bean时出错:作用域“session”对于当前线程不是活动的;如果您打算从单元引用这个bean,请

Grails、Tomcat7、REST客户端和字符的UTF-8编码

我正在尝试发布以下字符串“`.4.13-30613₤”)™" 曾经作为WAR部署的Grails服务器,在两个Tomcat7实例之间通信时,我没有运气 我们的服务器作为API工作,web层完全独立。数据通过向web应用发送POST请求保存到DB,然后web应用向服务器发送POST(或PUT for updates)请求以保存数据 当我使用“Run App”启动Web应用程序和服务器时,这可以在本地正常工作,但当我们使用Tomcat7和部署的WAR文件移动到非本地环境时,情况就不一样了 起初我认为这

Grails DB2更新前触发器行为

想知道是否有人能帮助我理解DB2 before insert触发器的行为。我有一个将行插入DB2数据库的Grails应用程序。该表有一个before insert触发器,用于更新更新的日期和用户: CREATE TRIGGER WTESTP.SCSMA11I NO CASCADE BEFORE INSERT ON WTESTP.SCSMA01T REFERENCING NEW AS NEWROW FOR EACH ROW MODE DB2SQL BEGIN ATOMIC SET NEWROW

Grails UrlMapping到固定控制器和操作的路由

我在UrlMapping文件中制定了以下规则,现在我所有的控制器都匹配到(“/$username”)映射,而不是第一个(“/$controller/$action?/$id?”) 这里的想法是使用一个短url列出用户的所有公共项目。它可以工作,但会破坏所有其他控制器 static mappings = { "/$controller/$action?/$id?"{ constraints { // apply constraints here

Grails数据绑定:使用映射创建抽象类的实例

与我的上一个问题()类似,我想对一个包含具有hasMany关系的抽象类集合的类使用数据绑定,但在本例中,我使用的不是列表,而是映射 我创建了一个集成测试失败的smalll项目,以显示问题,运行时使用: grails test-app -integration -echoOut DataBinding 无论如何,我将在这里通过描述类和测试来解释这个问题: class LocalizableContent { Map contentByLocale = [:].withDefault { l

未保存用户的Grails面包屑列表

您好,我一直在尝试为一个定制的Grails应用程序实现一个向下钻取类型的面包屑导航,但似乎无法理解为什么Cramp对象没有保存在Arraylist中 面包屑被创建并添加到列表中,但每当我导航到另一个页面时,列表就会重置 我知道有一个Grails面包屑插件,但是我无法将它用于这个特定的应用程序 下面是一些代码示例 域类: class User { transient springSecurityService String username String password boolea

Grails 如何在groovy线程中使用会话

我是Groovy的新手。我想在Groovy线程中更新会话变量。 我不能把真正的代码,所以我把样本代码 public updatename() { println(session["firstname"]); Thread.start { session["firstname"] = "atul"; println(session["firstname"]);

Grails 创建自定义验证器

我应该如何创建和配置验证器类以将其用作域类约束?例如: class Link { String url static constraints = { url url:true } } 动机:Grails UrlValidator不允许下划线字符,尽管它是有效的,请参阅 您可以在src/groovy中拥有一个实用程序类,该类具有所需的验证器(作为静态属性),并在相关的域类中引用它们 //src/groovy class MyValidators{ static urlCh

Grails 组合参数数组中的条件

这里的示例来自grails文档: def emeaCriteria = { eq "region", "EMEA" } def results = Airport.withCriteria { emeaCriteria.delegate = delegate emeaCriteria() flights { like "number", "BA%" } } 我的网页正在传回一组种族复选框,返回行ID。因此,服务器得到的是: ethnici

调试Grails应用程序

在ruyonrails中,为了调试应用程序,您可以调用“debugger”,然后 它将在控制台中启动调试器。这种方法在Grails中如何实现?尤其是在.gsp文件中?我正在使用一个简单的文本编辑器来开发Sublime 感谢在Sublime中调试java是不可能的。您可以使用另一个调试器,如Eclipse或Netbeans等功能齐全的IDE(但使用像Sublime这样的轻量级IDE打破了这一点,这对java非常好,如果不是为了调试目的的话) 存在一个命令行调试工具,可以用于非常简单的调试目的,并且

grails:scss编译器是生产环境所必需的

在grails中使用Vaadin7时,我面临一个问题,即如何使生产模式正常工作: Dec 25, 2013 11:56:28 PM com.vaadin.server.VaadinServlet serveOnTheFlyCompiledScss INFO: Request for /VAADIN/themes/app/styles.css not handled by sass compiler while in production mode 这是正常的,因为与dev模式不同,prod默认

Grails 调用lock()后如何解锁域对象?

如果在域实例上或在类上静态调用lock(),然后您决定对该对象没有任何操作,是否有方法手动立即释放锁?要展开所述内容,请指示: 当事务提交时,锁会自动释放 因此,一旦调用.save(),当该save的事务提交时(通常在服务结束方法时),锁将被释放 您可能还想签出这些。提交事务时会释放锁,但在调用save()时不会释放锁,因为save()之后的事务仍处于活动状态。当代码执行离开服务方法或刷新hibernate会话时(http请求完成后,会话被刷新并清除),可以提交事务 释放锁的最佳方法是使用手动事

在运行时查看Grails配置

是否可以在运行时通过JMX(或任何其他方式)查看Grails配置(即Config.groovy中的属性) 在开始写一些东西来做这件事之前,我只想检查一下grails是如何做的 提前谢谢我不明白你想问什么?您只想在gsp中显示所有集合属性吗?希望通过JMX进行显示。您想在哪里查看这些配置?只需使用grailsApplication.config,就可以轻松地显示应用程序中任何位置的所有配置属性,还可以通过在grails控制台中执行这一行来测试它。它提供了所有配置属性的映射表示。目前尚不清楚您希望从

Grails域类在没有Groovy.Sql的情况下无法保存

我正在使用Hibernate3和Grails2.2.5 我的一个视图中有一个AJAX调用,它应该查找一些数据并提供一个文本结果。在用于生成文本结果的方法中,我有一个对服务的方法调用,以将文本结果保存到它自己的域中 问题是.save(flush:true)不会持久保存到数据库。但是,如果我添加一个Groovy SQL实例并对任何插入执行.executeInsert(),Groovy SQL中的insert将被插入,并且.save(flush:true)方法将按预期工作。。。我尝试了各种不同的方法,

GrailsCleanAll——它说的是不能删除几个插件

我在执行完全清理(clean all)时遇到问题,即使从文件夹资源管理器或eclipse IDE中删除“目标”文件夹也是如此 它不是删除几个插件 请帮助我…脚本无法根据给定的权限删除磁盘上的文件,或者文件仍由某些java进程打开。关闭Eclipse,删除插件文件夹或整个~/.grails/[version]/[your project]dir

Grails linux上的ggts 3.6.3出了什么问题(例如代码完成中断、编译错误)?

我下载、提取并在Ubuntu 14.10上运行了它 我尝试导入一个现有的grails项目,但失败后,我创建了一个新的工作区和一个新的grails项目(“test”),在其中我创建了一个控制器(“test”) 基本上什么都不管用。例如,当我尝试编写一个简单的行,如import java.util.HashSet,UI会崩溃,代码完成失败,原因是: 或者,当我手动键入一行类似import java.util.HashSet的代码(没有代码完成)时,我会看到eclipse的stdout中出现各种编译

如何将mongodb和/或postgresql扩展插件添加到Grails3.0.0+?

今天我使用Grails3.0.0.M1,并尝试使用mongodb创建一个小应用程序,但是我无法将其正确添加到build.gradle文件中。正确的语法是什么?我试着摘录: repositories { mavenLocal() maven { url "http://repo.grails.org/grails/core" } } dependencyManagement { imports { mavenBom "org.grails:grails-bom:$

grails应用程序中基于租户的唯一用户名

我正在开发一个应用程序,它有几个公司作为我们的客户,每个公司下有多个用户访问我们的应用程序 因此,我构建了用户表,将所有公司的用户保存在同一个表中,并将company_id作为一列- class User { String username String password static belongsTo = [company:Company] static constraints = { username blank: false

在Grails控制器中打开或下载URL链接

我想在Grails控制器方法中呈现或下载链接到PDF的URL。我可以在一个新的或相同的标签中打开它,或者只是下载它。在grails中是如何做到这一点的 到目前为止,我已经: render(url: "http://test.com/my.pdf") 但是,我用这种方法和我尝试过的其他方法(例如用内容呈现响应)都会出错。有什么线索吗?是的,你完全可以轻松做到: 首先从URL获取文件(如果您没有本地文件),例如: class FooService { File getFileFromUR

如何在Grails中使用findAll和;如果;用于在搜索前验证字段是否为空的语句

我需要在Grails中创建一个findAll条件,但我有4个字段要搜索。如果某个特定变量不为null,我只需要按这些字段进行搜索 例如,如果所有变量都不是null,我将按如下所示的所有字段进行搜索: list = MyObject.findAll { 'in'("job", jobList) 'in'("businessUnit", businessUnitList) 'in'("company", companyList) eq("regularTime", p

Grails Gorm:Can';删除后不能删除

我对戈姆有一个(对我来说很奇怪的)问题 我们必须清理我们项目中的一些数据,除了一件事情外,其他一切都很好 下面是我们的域类的摘录 class Person { ... } class Grade { ... static hasMany = [speaker: Person] } 现在我正在搜索要删除的特定人群(重复)。找到它们后,我需要将要删除的人的所有实例切换到剩余的实例。下面是这一逻辑的摘录: def personDelete = Person.get(it.get

Grails Groovy—如何识别文本中的url并将其显示为超链接

我尝试了encodeAsHTML(),如下所示: <p class="common-textmb-30">${direction?.description?.encodeAsHTML()}</p> ${direction?.description?.encodeAsHTML()} 其中“direction?.description”是用户在某些输入中输入的文本 它没有检测到url。encodeAsHTML只是转义保留的HTML符号(例如 字符串文本=attrs.tex

如何在Grails中将对象存储到应用程序级上下文中

我想存储HashMap对象,比如HashMap contextHashMap=newhashmap()可以通过应用程序访问,就像我们在Struts的ApplicationContext中存储对象/变量一样 因此,我可以随时更改或读取此变量中的数据。不清楚您需要什么,但一个选项是将数据存储在单例服务中,并在需要时注入该服务。这是一个非常简单的解决方案。我们并不清楚您需要什么,但有一种选择是将数据存储在单例服务中,并在需要的地方注入该服务。这是一个超级简单的解决方案。您还可以创建类型为Map(Con

Grails验证错误从服务到控制器消失

在服务方法中执行自定义rejectValue时,grails会丢失服务方法和返回控制器之间的错误。这似乎是在更新行实例时发生的,而不是在创建行实例时发生的 在职 def specialValidation(petInstance){ if(petInstance.petType.requiresStateId && !petInstance.StateId){ petInstance.errors.rejectValue('StateId','

在Grails应用程序中使用ApachePOI生成PPT

我试图将ApachePOI添加到我的GrailsWeb应用程序中以生成PPT。我似乎没有让应用程序编译,我总是看到以下错误 Resolve获取依赖项时出错:在grailsCentral中找不到工件org.apache.poi:poi:zip:3.14 只有在BuildConfig.groovy的plugin部分下包含以下行时,才会看到此错误 编译“org.apache.poi:poi:3.14” 我已经将POI jar(如下所示)包含在BuildConfig的dependency部分中,此时它不

Grails3中的拆分配置

我目前正在将现有的Grails2.5.x应用程序迁移到Grails3.1 在以前的grails版本中,我真正喜欢的是使用grails.config.locations选项在多个文件上模块化配置文件,例如: Config.groovy App.groovy Logging.groovy SpringSecurity.groovy Quartz.groovy ... 由于Grails3现在基于SpringBoot,所以它使用了不同的配置方法。但我无法找到从多个文件加载配置的方法 我已经读过spri

在Grails中的taglib中计算数据库中的字符串

我有一个taglib方法,我从数据库中获取一个对象,并使用字符串表达式进行计算。根据文档,应该可以这样做: out << "<div id=\"${attrs.book.id}\">" out试试这个 def output = "" def objectFromDb = fetchObjectFromDb() def output += objectFromDb.getContent() // use toString() if needed out <&l

从控制器grails呈现gsp不工作

我面临无法从控制器渲染gsp视图的问题。 我做了以下工作: 1) 创建应用程序演示 2) grails(打开grails cmd) 3) 创建控制器check.work package check class WorkController { def index() { render(view:'foo') } } 4) 在grails app/views/work/foo.gsp中放置一些内容 5) 已在8080上启动grails run应用程序 问题是,若我只是渲染(“hello”)

Grails 基于ID字段从表中获取行并显示为JSON/XML

我有一个grails应用程序,它有一个users表和一个results表,我需要能够从results表中获得与当前登录的CustomerID匹配的所有结果,并且需要有将它们显示为JSON或XML的选项 当我尝试使用时: Results.findByCustomerID 我无法像使用以下选项一样将客户ID传递给您: Results.findByNumber() 我的结果表包括客户ID、编号、结果、转换服务、日期和时间 我现在在一个结果控制器里做这件事 有什么帮助吗?我解决了这个问题。我的域类

Grails 3.0.1 spring安全核心返回渐变构建终止,错误为:编译失败

我已经将SpringSecurityCore3.0.4集成到Grails3.0.1中。在运行s2 quickstart grails创建我的用户、角色和请求映射域后,我的应用程序将返回错误Gradle build终止,错误为:编译失败 在文件user.groovy中,import grails.plugin.springsecurity.SpringSecurityService行用红色下划线。 同样在role.groovy文件中,@GrailsCompileStatic行也有下划线。 请帮帮我

Grails 重定向到URI将发送回浏览器中添加的已发布参数';s的URL栏

Grails版本:3.3.4, Groovy版本:2.4.14, JVM版本:1.8.0_161, 库本图14.04 我写了一个简单的身份验证表单(最终将通过https发布): } 正确登录并重定向到uri:“/”-我在浏览器的URL字段中看到名称和密码: http://localhost:8080/?j_username=test&j_password=TEST 我可以发誓grails 3在第一个版本中没有出现这种情况。。。我不记得什么时候 最好不要在URL中以GET参数的形式发回发

如何将ID列表绑定到grails中的命令对象?

比如说,当您提交表单时,它会发送一个ID列表 <form action="/process"> <input type="hidden" name="ids" value="4, 6, 10, 14, 20, 56" > <input type="submit" value="Submit"> </form> 在控制器端 def process(EmailCommand cmd){ //now iterating over regis

如何让grails f:表工作(3.3.8)

grails很好,但是在没有示例的地方,它很难使用 我认为: <f:table collection="${bankAccountList}"/> 及 我还尝试了该视图的官方文档中的内容: <f:table collection="bankAccountList"/> 我经常遇到的错误是: Class java.lang.NullPointerException Message Request processing failed; nested exceptio

grails restful groovy无法解析符号

我试图通过以下链接学习grails:根据页面的指导创建控制器ProductController后,我得到以下错误: Unable to resolve class ProductService in ProductController 我是groovy新手,试图通过导入必要的包来解析类引用,但是链接没有显示解析此类的任何导入。ProductController.groovy中没有ProductService的显式导入语句。以下是课程: 产品控制器: package hibernate.exam

将grails插件部署到Nexus的问题

我有一个grails项目,配置为一个插件,我想做的是将其推送到本地Nexus存储库中 我已经能够使用grails发布插件来实现这一点,但是当我使用依赖项时,我的项目使用依赖项找不到类 所以我查看了一下jar以了解原因,它看起来没有编译任何Groovy代码,看起来所有Groovy文件都打包在一起了,而不是先编译代码 你知道我做错了什么吗 关于我正在做什么的信息: Grails:2.4.3 BuildConfig.groovy grails.project.class.dir = "target/c

  1    2   3   4   5   6  ... 下一页 最后一页 共 378 页