我正在尝试向grails域类添加一个方法,例如
class Item {
String name
String getReversedName() {
name.reverse()
}
}
当我尝试使用grails控制台加载应用程序时,出现以下错误:
原因:org.springframework.beans.factory.BeanCreationException:创建名为“sessionFactory”的bean时出错:调用init方法失败;嵌套异常为org.hi
我有一个安装了SpringSecurityCore插件的grails应用程序。当地一切正常。我部署到一个临时服务器上,一切正常。我部署到了我们的生产服务器,它是我们的暂存服务器的镜像。我可以很好地访问未受保护的页面。但当SpringSecurity启动并尝试执行它的重定向时,它会重定向到localhost,而不是grails.serverURL
我将尽可能地提高日志记录率,并重新部署,看看我是否能了解任何事情。我会把我的发现贴在这里。如果有人以前有过这种经历,并且知道会发生什么,请告诉我。此外,
标签: Grails
grails-pluginsts-springsourcetoolsuite
更多的时候,当我安装插件时,我无法识别它。
例如,使用Joda Time,我有一个变量LocalDateTime日期(我正在导入Joda库),eclipse表示无法解析LocalDateTime类,尽管应用程序可以工作。
或者我已经安装了grails icepush插件,但安装后taglib文件丢失
这是SpringSource的问题?您应该升级到SpringSource工具套件(STS),它是Eclipse与一套插件捆绑在一起的。它非常支持Groovy和Grails。2.5.0最近发布,它有一
获取与给定GORM域对象关联的持久属性列表的最佳/最简单方法是什么?我可以获得所有属性的列表,但此列表包含非持久性字段,如类和约束
目前,我正在使用它,并使用我创建的列表筛选出非持久属性的列表:
def nonPersistent = ["log", "class", "constraints", "properties", "errors", "mapping", "metaClass"]
def newMap = [:]
domainObject.getPropert
我有这个域名:
class Participation {
ParticipationStatus status
}
class ParticipationStatus{
String name
Date creationDate
}
我创建一个查询:
Participation.createCriteria().list{
createAlias("status","statusAlias")
order "statusAlias.creationDate"
标签: Grails
grails-domain-classgrails-controllergrails-validationgrails-constraints
我有一个名为Modulo的域,它有一些属性,还有一个控制器,它有一个从模型创建对象并保存它的方法,当执行save shell时,会显示以下错误:
克拉斯群岛的第[{0}]
但是,如果我将约束设置为null为true,则会再次显示错误。我认为我不应该设置这个约束
该模型链接到一个mysql表,该表具有除id allow null之外的所有属性
我想我没有做错什么。有什么建议吗
域:模
class Modulo {
String nombre
String icon
St
我正在使用
我想测试登录的用户是否是便笺的创建者。注意是Grails域类。creator是User,它是我的Spring Security核心插件的用户域类
下一个代码不起作用
<g:set var="loggedUserId"><sec:loggedInUserInfo field="id"/></g:set>
<g:if test="${note.creator.id == loggedUserId}">
Never jumps here
我正在为Grails(V1.3.7)使用Jasper插件(V1.5.3)。我已经在服务的方法中编写了以下代码
import org.codehaus.groovy.grails.plugins.jasper.JasperExportFormat;
import org.codehaus.groovy.grails.plugins.jasper.JasperReportDef;
import org.apache.commons.io.FileUtils;
class ReportService
我正在使用Grails和Spring安全性。控制器的某些方法用@Secured注释,当登录用户没有必要的角色时,我希望他被重定向到上次访问的页面,而不是/login/denied
我想真正的问题是如何访问最后一页,这样我就可以相应地将他从拒绝的方法中重定向出来
在JavaScript中有一种方法可以做到这一点,使用,但是我正在寻找一种在服务器端实现这一点的方法。也许您可以使用拦截器来存储视图的历史记录,然后使用accessDeniedHandler重定向到上一个也许您可以使用拦截器来存储视图的历
我有一些数据,stateNames,用来实例化目标国家的一个实例。现在,我只有一个国家,但每个国家的州名应该不同。用我的数据实例化Country实例的最佳方法是什么?我是grails的新手,如果有任何“最佳实践”或通用设计,我将不胜感激
我能想到的一个解决方案是使用BootStrap将Country的美国实例保存到数据库中。这种方法的缺点是什么
另一个解决方案是将数据保存在web app文件夹下的一个文件(xml?)中。如果我采用这种方法,那么控制器是否应该实例化Country的unitedSt
在我们的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
我将twitter引导与grails一起使用,在我的布局中有以下内容:
<div class="nav-collapse">
<ul class="nav">
<li><a href="${createLink(uri: '/request/new')}">My Link</a></li>
</ul>
我一直在遵循下面的教程,但肯定有一些重要的步骤,在这些步骤中,我没有掌握的知识正在被假定
下面是my datasource.groovy中的设置
username = "sa"
password = ""
url = "jdbc:sqlserver://localhost:1433;databaseName=Sandpit"
driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
dialect = "org.hiber
标签: Grails
scopeintegration-testing
我有一项服务需要范围“会话”。所以我就用
class MyService {
static scope = "session"
...
}
但在我的集成测试中,它没有正确连接:
class MyServiceIntegrationSpec extends IntegrationSpec {
def myService
...
}
我总是会出错:
创建名为“myService”的bean时出错:作用域“session”对于当前线程不是活动的;如果您打算从单元引用这个bean,请
我正在尝试发布以下字符串“`.4.13-30613₤”)™" 曾经作为WAR部署的Grails服务器,在两个Tomcat7实例之间通信时,我没有运气
我们的服务器作为API工作,web层完全独立。数据通过向web应用发送POST请求保存到DB,然后web应用向服务器发送POST(或PUT for updates)请求以保存数据
当我使用“Run App”启动Web应用程序和服务器时,这可以在本地正常工作,但当我们使用Tomcat7和部署的WAR文件移动到非本地环境时,情况就不一样了
起初我认为这
想知道是否有人能帮助我理解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
我在UrlMapping文件中制定了以下规则,现在我所有的控制器都匹配到(“/$username”)映射,而不是第一个(“/$controller/$action?/$id?”)
这里的想法是使用一个短url列出用户的所有公共项目。它可以工作,但会破坏所有其他控制器
static mappings = {
"/$controller/$action?/$id?"{
constraints {
// apply constraints here
与我的上一个问题()类似,我想对一个包含具有hasMany关系的抽象类集合的类使用数据绑定,但在本例中,我使用的不是列表,而是映射
我创建了一个集成测试失败的smalll项目,以显示问题,运行时使用:
grails test-app -integration -echoOut DataBinding
无论如何,我将在这里通过描述类和测试来解释这个问题:
class LocalizableContent {
Map contentByLocale = [:].withDefault { l
您好,我一直在尝试为一个定制的Grails应用程序实现一个向下钻取类型的面包屑导航,但似乎无法理解为什么Cramp对象没有保存在Arraylist中
面包屑被创建并添加到列表中,但每当我导航到另一个页面时,列表就会重置
我知道有一个Grails面包屑插件,但是我无法将它用于这个特定的应用程序
下面是一些代码示例
域类:
class User {
transient springSecurityService
String username
String password
boolea
我是Groovy的新手。我想在Groovy线程中更新会话变量。
我不能把真正的代码,所以我把样本代码
public updatename()
{
println(session["firstname"]);
Thread.start
{
session["firstname"] = "atul";
println(session["firstname"]);
我应该如何创建和配置验证器类以将其用作域类约束?例如:
class Link {
String url
static constraints = { url url:true }
}
动机:Grails UrlValidator不允许下划线字符,尽管它是有效的,请参阅 您可以在src/groovy中拥有一个实用程序类,该类具有所需的验证器(作为静态属性),并在相关的域类中引用它们
//src/groovy
class MyValidators{
static urlCh
这里的示例来自grails文档:
def emeaCriteria = {
eq "region", "EMEA"
}
def results = Airport.withCriteria {
emeaCriteria.delegate = delegate
emeaCriteria()
flights {
like "number", "BA%"
}
}
我的网页正在传回一组种族复选框,返回行ID。因此,服务器得到的是:
ethnici
在ruyonrails中,为了调试应用程序,您可以调用“debugger”,然后
它将在控制台中启动调试器。这种方法在Grails中如何实现?尤其是在.gsp文件中?我正在使用一个简单的文本编辑器来开发Sublime
感谢在Sublime中调试java是不可能的。您可以使用另一个调试器,如Eclipse或Netbeans等功能齐全的IDE(但使用像Sublime这样的轻量级IDE打破了这一点,这对java非常好,如果不是为了调试目的的话)
存在一个命令行调试工具,可以用于非常简单的调试目的,并且
在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默认
如果在域实例上或在类上静态调用lock(),然后您决定对该对象没有任何操作,是否有方法手动立即释放锁?要展开所述内容,请指示:
当事务提交时,锁会自动释放
因此,一旦调用.save(),当该save的事务提交时(通常在服务结束方法时),锁将被释放
您可能还想签出这些。提交事务时会释放锁,但在调用save()时不会释放锁,因为save()之后的事务仍处于活动状态。当代码执行离开服务方法或刷新hibernate会话时(http请求完成后,会话被刷新并清除),可以提交事务
释放锁的最佳方法是使用手动事
是否可以在运行时通过JMX(或任何其他方式)查看Grails配置(即Config.groovy中的属性)
在开始写一些东西来做这件事之前,我只想检查一下grails是如何做的
提前谢谢我不明白你想问什么?您只想在gsp中显示所有集合属性吗?希望通过JMX进行显示。您想在哪里查看这些配置?只需使用grailsApplication.config,就可以轻松地显示应用程序中任何位置的所有配置属性,还可以通过在grails控制台中执行这一行来测试它。它提供了所有配置属性的映射表示。目前尚不清楚您希望从
我正在使用Hibernate3和Grails2.2.5
我的一个视图中有一个AJAX调用,它应该查找一些数据并提供一个文本结果。在用于生成文本结果的方法中,我有一个对服务的方法调用,以将文本结果保存到它自己的域中
问题是.save(flush:true)不会持久保存到数据库。但是,如果我添加一个Groovy SQL实例并对任何插入执行.executeInsert(),Groovy SQL中的insert将被插入,并且.save(flush:true)方法将按预期工作。。。我尝试了各种不同的方法,
我在执行完全清理(clean all)时遇到问题,即使从文件夹资源管理器或eclipse IDE中删除“目标”文件夹也是如此
它不是删除几个插件
请帮助我…脚本无法根据给定的权限删除磁盘上的文件,或者文件仍由某些java进程打开。关闭Eclipse,删除插件文件夹或整个~/.grails/[version]/[your project]dir
标签: Grails
sts-springsourcetoolsuitespring-tool-suiteggts
我下载、提取并在Ubuntu 14.10上运行了它
我尝试导入一个现有的grails项目,但失败后,我创建了一个新的工作区和一个新的grails项目(“test”),在其中我创建了一个控制器(“test”)
基本上什么都不管用。例如,当我尝试编写一个简单的行,如import java.util.HashSet,UI会崩溃,代码完成失败,原因是:
或者,当我手动键入一行类似import java.util.HashSet的代码(没有代码完成)时,我会看到eclipse的stdout中出现各种编译
今天我使用Grails3.0.0.M1,并尝试使用mongodb创建一个小应用程序,但是我无法将其正确添加到build.gradle文件中。正确的语法是什么?我试着摘录:
repositories {
mavenLocal()
maven { url "http://repo.grails.org/grails/core" }
}
dependencyManagement {
imports {
mavenBom "org.grails:grails-bom:$
我正在开发一个应用程序,它有几个公司作为我们的客户,每个公司下有多个用户访问我们的应用程序
因此,我构建了用户表,将所有公司的用户保存在同一个表中,并将company_id作为一列-
class User {
String username
String password
static belongsTo = [company:Company]
static constraints = {
username blank: false
我想在Grails控制器方法中呈现或下载链接到PDF的URL。我可以在一个新的或相同的标签中打开它,或者只是下载它。在grails中是如何做到这一点的
到目前为止,我已经:
render(url: "http://test.com/my.pdf")
但是,我用这种方法和我尝试过的其他方法(例如用内容呈现响应)都会出错。有什么线索吗?是的,你完全可以轻松做到:
首先从URL获取文件(如果您没有本地文件),例如:
class FooService {
File getFileFromUR
标签: Grails
gormgrails-domain-class
我需要在Grails中创建一个findAll条件,但我有4个字段要搜索。如果某个特定变量不为null,我只需要按这些字段进行搜索
例如,如果所有变量都不是null,我将按如下所示的所有字段进行搜索:
list = MyObject.findAll {
'in'("job", jobList)
'in'("businessUnit", businessUnitList)
'in'("company", companyList)
eq("regularTime", p
我对戈姆有一个(对我来说很奇怪的)问题
我们必须清理我们项目中的一些数据,除了一件事情外,其他一切都很好
下面是我们的域类的摘录
class Person {
...
}
class Grade {
...
static hasMany = [speaker: Person]
}
现在我正在搜索要删除的特定人群(重复)。找到它们后,我需要将要删除的人的所有实例切换到剩余的实例。下面是这一逻辑的摘录:
def personDelete = Person.get(it.get
我尝试了encodeAsHTML(),如下所示:
<p class="common-textmb-30">${direction?.description?.encodeAsHTML()}</p>
${direction?.description?.encodeAsHTML()}
其中“direction?.description”是用户在某些输入中输入的文本
它没有检测到url。encodeAsHTML只是转义保留的HTML符号(例如
字符串文本=attrs.tex
我想存储HashMap对象,比如HashMap contextHashMap=newhashmap()可以通过应用程序访问,就像我们在Struts的ApplicationContext中存储对象/变量一样
因此,我可以随时更改或读取此变量中的数据。不清楚您需要什么,但一个选项是将数据存储在单例服务中,并在需要时注入该服务。这是一个非常简单的解决方案。我们并不清楚您需要什么,但有一种选择是将数据存储在单例服务中,并在需要的地方注入该服务。这是一个超级简单的解决方案。您还可以创建类型为Map(Con
在服务方法中执行自定义rejectValue时,grails会丢失服务方法和返回控制器之间的错误。这似乎是在更新行实例时发生的,而不是在创建行实例时发生的
在职
def specialValidation(petInstance){
if(petInstance.petType.requiresStateId && !petInstance.StateId){
petInstance.errors.rejectValue('StateId','
我正在尝试添加auditlog插件,但当服务器启动时,出现错误,无法找到已配置的auditlog域,服务器关闭
[ERROR] 2015-11-10 15:22:04,561 org.codehaus.groovy.grails.web.context.GrailsContextLoaderListener - Error initializing the application: Error creating bean with name 'org.codehaus.groovy
我的应用程序.yml>
dataSource:
pooled: true
jmxExport: true
driverClassName: com.mysql.jdbc.Driver
dialect: org.hibernate.dialect.MySQL5InnoDBDialect
username: root
password: *****
environments:
development:
dataSource:
我试图将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部分中,此时它不
我目前正在将现有的Grails2.5.x应用程序迁移到Grails3.1
在以前的grails版本中,我真正喜欢的是使用grails.config.locations选项在多个文件上模块化配置文件,例如:
Config.groovy
App.groovy
Logging.groovy
SpringSecurity.groovy
Quartz.groovy
...
由于Grails3现在基于SpringBoot,所以它使用了不同的配置方法。但我无法找到从多个文件加载配置的方法
我已经读过spri
我有一个taglib方法,我从数据库中获取一个对象,并使用字符串表达式进行计算。根据文档,应该可以这样做:
out << "<div id=\"${attrs.book.id}\">"
out试试这个
def output = ""
def objectFromDb = fetchObjectFromDb()
def output += objectFromDb.getContent() // use toString() if needed
out <&l
我面临无法从控制器渲染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应用程序,它有一个users表和一个results表,我需要能够从results表中获得与当前登录的CustomerID匹配的所有结果,并且需要有将它们显示为JSON或XML的选项
当我尝试使用时:
Results.findByCustomerID
我无法像使用以下选项一样将客户ID传递给您:
Results.findByNumber()
我的结果表包括客户ID、编号、结果、转换服务、日期和时间
我现在在一个结果控制器里做这件事
有什么帮助吗?我解决了这个问题。我的域类
我已经将SpringSecurityCore3.0.4集成到Grails3.0.1中。在运行s2 quickstart grails创建我的用户、角色和请求映射域后,我的应用程序将返回错误Gradle build终止,错误为:编译失败
在文件user.groovy中,import grails.plugin.springsecurity.SpringSecurityService行用红色下划线。
同样在role.groovy文件中,@GrailsCompileStatic行也有下划线。
请帮帮我
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列表
<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:table collection="${bankAccountList}"/>
及
我还尝试了该视图的官方文档中的内容:
<f:table collection="bankAccountList"/>
我经常遇到的错误是:
Class
java.lang.NullPointerException
Message
Request processing failed; nested exceptio
我试图通过以下链接学习grails:根据页面的指导创建控制器ProductController后,我得到以下错误:
Unable to resolve class ProductService in ProductController
我是groovy新手,试图通过导入必要的包来解析类引用,但是链接没有显示解析此类的任何导入。ProductController.groovy中没有ProductService的显式导入语句。以下是课程:
产品控制器:
package hibernate.exam
我有一个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 页