小编Bur*_*ith的帖子

是否可以在grails中动态映射域对象的表名?

我有一个看起来像的域名

class Foo {

  String name

  static mapping = {
     table 'foo'    
  }
}
Run Code Online (Sandbox Code Playgroud)

但我想做的更像是:

static mapping = {
   table "foo_${dynamicVarThatComesFromRequest}"
}
Run Code Online (Sandbox Code Playgroud)

我想知道的是这是否可能?

谢谢!

database grails grails-orm

5
推荐指数
1
解决办法
2713
查看次数

在Grails应用程序启动期间执行SQL插入

我正处于开发阶段,尝试使用内存数据库并在Grails应用程序启动期间加载一些数据.我的问题是,有没有办法编写/配置可以在启动期间执行的SQL插入语句.

grails datasource

5
推荐指数
1
解决办法
4508
查看次数

安全的字符串片

我有一个字符串,我想要250个或更少的字符.我是用java方式做的,但是有一个常规的快捷方式:

def longString = "This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This is my really long string.This …
Run Code Online (Sandbox Code Playgroud)

groovy

5
推荐指数
1
解决办法
574
查看次数

Quartz Job中的Grails事务

大家下午好.

我有一个关于交易的问题直到春天和Grails拥有我有多个工作运行相同的服务.

我有一个Grails的默认配置服务和一个每5秒运行一次的方法.通过石英作业,但该方法的执行时间超过5秒.要完成的.我的问题是什么时候石英调用这个方法它们是在同一个事务中执行还是每次发生这个时创建一个新的?我知道每次调用quartz都会创建一个新线程,但是不知道它们是否在同一个事务中,例如,如果调用它会给出一个例外来回滚到目前为止所做的所有事情.

我很感激答案.

grails spring transactions

5
推荐指数
1
解决办法
819
查看次数

HTTPBuilder在Grails中编码utf-8

我在Grails中使用HTTPBuilder时遇到问题.

代码是这样的.

def http = new HTTPBuilder("theURL")

http.request(method, ContentType.JSON) {
    uri.path = "theURI"

    headers.'Authorization' = "OAuth  $accessToken"
    headers.'Accept' = "application/json"
    headers.'content-type' = "application/json;charset=utf-8"

    response.success = { resp, json ->
        result = json
    }
}

return result
Run Code Online (Sandbox Code Playgroud)

现在响应是带有"CobroN 1234"的JSON,但我需要"CobroNº1234"

我用curl尝试了这个并且响应很好"CobroNº1234",这让我觉得问题是HTTPBuilder而不是我的API响应请求.

我认为这是响应编码的问题.

grails utf-8

5
推荐指数
1
解决办法
2614
查看次数

访问对象列表上的唯一闭包会产生UnsupportedOperationException

我正在使用Grails 2.3.11并使用MongoDb插件mongodb:3.0.3.

我的代码看起来像这样:

def home() {
   List abcs = ABC.list()
   println abcs.unique { it.parent }
}
Run Code Online (Sandbox Code Playgroud)

访问唯一闭包时代码中断.

例外说:

ERROR errors.GrailsExceptionResolver- UnsupportedOperationException   occurred when processing request: [GET] /MongoAppInEcomEnv/product/home
Stacktrace follows:
Message: null
Line | Method
->>  148 | add       in java.util.AbstractList
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    108 | add …
Run Code Online (Sandbox Code Playgroud)

grails grails-orm mongodb

5
推荐指数
1
解决办法
80
查看次数

Intellij idea 停止执行函数而不停止完整调试

我正在使用 IntelliJ IDEA 12.1.4 来调试 Grails 应用程序。我大约需要 2 分钟才能开始调试会话。我想尽可能避免重新启动。

我正在尝试调试控制器操作,我需要看到它被击中。它执行一些我不想执行的操作。我知道这可以通过暂时在第一行的该操作中放置一个返回来执行。但我认为一般来说,所有框架都不支持动态代码更改。那么IDEA是否有任何功能可以让我简单地从调试点退出而不退出整个调试(即退出单个HTTP请求而不取消整个调试器会话)?

debugging grails intellij-idea

5
推荐指数
1
解决办法
2832
查看次数

在gradle eclipse之后,GGTS Classpath将无法识别类路径上的文件夹

我正在尝试在GGTS中设置Grails项目.我已经生成了项目和类路径文件,但在获取要构建的项目时我无法解决此错误:

容器'Grails Dependencies'引用非现有库'C:\ myProjects\project\target\work\plugin-classes'

该文件夹存在于目标目录中.我无法在GGTS中运行任何东西,因为它不会在那里构建.我无法找到一种方法来删除它.任何方法来修复该类路径错误.

我正在使用GGTS 3.6.4.Grails 2.5和Groovy 2.4

grails ggts

5
推荐指数
1
解决办法
331
查看次数

在 grails run-app 中出现内存不足错误

我正在尝试执行 grails run-app 并出现内存不足错误。[groovyc] java.lang.OutOfMemoryError: Java 堆空间

我已将 grails_opts 设置为: GRAILS_OPTS="-XX:MaxPermSize=2048m -Xmx4096M -server"

也尝试了 JAVA_OPTS 的各种选项,但仍然出现内存不足错误。

grails out-of-memory

5
推荐指数
0
解决办法
395
查看次数

Grails 3.0.11 AOP注释在Controller方法之前预处理commandObjects

我试图使用注释和在方法之前执行的Aspect检索grails控制器方法的参数.方面处理程序正确执行但我无法访问参数(实现grails.validation.Validateable)参数列表为空.

experiment.aspect.validated

package experiment.aspect

import java.lang.annotation.ElementType
import java.lang.annotation.Retention
import java.lang.annotation.RetentionPolicy
import java.lang.annotation.Target

/**
 * Created by Vaggelis on 10/13/2016.
 */

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@interface Validated {

}
Run Code Online (Sandbox Code Playgroud)

experiment.aspect.ValidatedAspect

package experiment.aspect


import grails.validation.ValidationException
import org.aspectj.lang.JoinPoint

import org.aspectj.lang.annotation.Aspect
import org.aspectj.lang.annotation.Before


/**
 * Created by Vaggelis on 10/13/2016.
 */
@Aspect
class ValidatedAspect {

    @Before("@annotation(experiment.aspect.Validated)")
    public void preValidate(JoinPoint point) throws ValidationException{

        println "parameters  ${point.getArgs()}"


    }
}
Run Code Online (Sandbox Code Playgroud)

conf.spring.resources

import experiment.aspect.ValidatedAspect

// Place your Spring DSL code here
beans = {
    validatedAspect(ValidatedAspect)
}
Run Code Online (Sandbox Code Playgroud)

controllers.experiment.TestController

package …
Run Code Online (Sandbox Code Playgroud)

grails aop spring annotations

5
推荐指数
1
解决办法
332
查看次数