我目前正在将Joda DateTime(DateTime+时区)值存储到数据库中
我想做的是根据用户的时区而不是UTC时间获取24小时的记录。也就是说,我想为时区为GMT的人获取00:00GMT-24:00GMT之间的记录,为时区为PST的人获取00:00PST-24:00PST之间的记录
现在我不认为我能在HQL查询中做到这一点,因为HQL显然不会为我执行DateTime.toDateTime(toZone)转换。那么,在groovy/grails中是否可以执行这种范围搜索呢?我对此考虑了更多
问题在标题中-如何在Config.groovy中获取ServletContext。目的是获取当前上下文的真实(绝对)路径。不可能在那里获取ServletContext
可以通过一个难看的解决方法获得绝对路径:
def path = getClass().getProtectionDomain().getCodeSource().getLocation()
.getFile().replace(getClass().getSimpleName() + ".class", "").subst
换言之,以下各项:
class Subscriber {
...
static hasMany = [ topics : Topic]
static fetchMode = [topics:"eager"]
static mapping = {
topics joinTable: [name: 'subscriber_topic', column: 'topic_id', key: 'subscriber_id']
}
}
我正在努力做到以下几点:
用户可以为项目投票(控制器:项目,操作:投票)
2a。如果用户已登录,则投票操作将通过
2b。若用户未登录,则用户需要登录/创建一个帐户(由用户控制器处理),然后进行投票操作
我该如何做,以确保一旦用户登录/创建帐户,投票操作将自动进行,而无需用户再次对项目投票 将用户投票存储在会话对象中。当用户登录时,检查会话对象是否存在投票。类似于下面的sudo代码。
投票行动
if (isLoggedIn==false)
{
session['vote']=voteObject
有没有一种方法可以通过Intelli-J启动应用程序,从而使localhost:8080/成为应用程序的根目录?我遇到的问题是,在本地工作的AJAX URL在生产环境中不起作用,createLink(操作:“ajaxUpdate”)似乎创建了对/app/ajaxUpdate的引用,后者在本地工作,但在生产环境中不起作用
有没有办法修复createLink以在两个位置都工作?我想也许我可以使用UrlMappings使所有ajax调用变得漂亮,只参考/ajaxUpdate,但这不起作用,因为grai
我有一个grails应用程序,它有一个创建报告的服务。该报告的定义如下:
class Report {
Date createDate
String reportType
List contents
static constraints = {
}
}
该服务生成一个报告并将内容填充为createCriteria返回的列表
我的问题是,我的服务声称正在保存该报告,没有出现错误,日志记录说一切都在那里,但当我从该报告的控制器调用show时,它说内容为空
我有一个动作,比如说default,它将从不同的gsp页面调用。
此默认值具有不同的操作集,完成此操作后,它需要重定向到调用它的同一页面。有没有办法做到这一点
例如:
A.普惠制->
那么默认值应该重定向到A.gsp
B.普惠制->
那么默认值应该重定向到B.gsp
我知道如何通过发送一些参数值或其他参数来识别调用方。
但我正在检查是否有任何方法可以直接重定向到调用方,而不显式地从调用方传递任何信息 您可以编写一个使用g.link和的taglib
标签: Grails
primary-keygrails-domain-class
国家级中心{
String ctr_name
String ctr_abrev
String toString(){
ctr_abrev
}
}
我使用SQLS Express作为数据库。我希望这个类(表)的主键是ctr_abrev
a) 我怎样才能做到
static mapping = {
id generator:'assigned', name:'ctr_abrev'
}
hm感谢您的快速回答。在scafauldinf显示以下内容的
嘿。想象一下我有一个类似这样的
class Car{
String name
String color
String mark
}
class Motion {
String name
Car carName
}
<td><g:link action="show" id="${countryInstance.id}">${fieldValue(bean: countryInstance, field: "id")}</g:link></td&
我已经发布了这个问题,但我意识到答案不是我想要的。想象一下这个控制器:
class exampleController{
def action1 = {
...
[lala: lala, lele: lele]}
...
}
def action15 = {
...
[lala: lala, lele: lele]
}
我希望能够在此控制器中的所有操作中返回相同的参数。想象一下:
def
读者注意:多亏蒂姆在下面的帮助,我才得以解决这个问题。问题的根源不是ArrayList转换,而是运行时引擎将错误指向了错误的行,即我在下面显示的访问列表的行。真正的错误是在下面4行,在这里我错误地将一个元素分配到我刚刚检索到的元素中
我有一个小的结果类(在我的grails控制器类的底部),然后在我的代码中,我有
ArrayList<Result> bestResults = new ArrayList<Result>()
与
或者只是
Result res = best
标签: Grails
submitactiononchange
我想选择带有标记的语言,并在选择更改时将选择参数发送给操作。(参数应在打开视图的url中可见)
我尝试了和的不同变体:
版本创建正确的参数,但不创建rest url:
<g:form name="selectLanguage" <b>action='show' id="${mitarbeiterprofilInstance.id}" lang=lang>
<g:select onchange="submit();"
value="${profilInstan
Grails手册的第1部分指出:
“要将一个URI重写到另一个显式URI(而不是控制器/操作对),请执行以下操作:
"/hello"(uri: "/hello.dispatch")
在与其他框架集成时,重写特定URI通常很有用。”
我希望利用这种能力直接映射到html文件上,例如
"/test"(uri: "/test.html")
但它不起作用。您能否澄清/扩展URI功能的用途(例如,“hello.dispatch”通常指什么)?任何关于如何使用此URI功能的工作示例都将非常有用
我将很快开发一个访问couchDB的web门户。当然,我已经做了一些研究,但是我不确定我的想法是否可行
我将拥有一个现存的couchDB。可能只有一个用户可以通过GET方法获得读取权限。web门户必须为来自couchDB的不同用户过滤和显示数据,因此我需要某种额外的用户管理
到目前为止,我只有关于web框架和技术的基本知识,但是我对Java有相当丰富的经验。因此,根据我目前的研究,我认真考虑使用Grails、ExtJS或两者兼用。但是,我是否能够从这些框架中轻松访问couchDB?我发现了一些关
我有这个域类
class Book {
String code
String description
static mapping = {
table 'Book'
version false
}
}
我有一个表BookStore,有COD和DSC列。
我需要这张桌子的地图
如何实现这一点?如果我正确理解您的问题,中的映射部分应该会帮助您
就您的示例而言,以下操作应该有效:
class Book {
String c
我试图从Grails框架中获取LWE/solr中存在的RESTAPI(即自动完成/拼写检查等),
但如果有人能帮我的话,我不知道该怎么做
先谢谢你 有一个与solr安装接口的solr插件
有一个与solr安装接口的solr插件
以编程方式调用SOLR的最佳方法是使用API以编程方式调用SOLR的最佳方法是使用API该插件不是用于索引应用程序的数据而不是调用远程SOLR实例吗?该插件不是用于索引应用程序的数据而不是调用远程SOLR实例吗?
我试图从grails项目中的控制器调用一个方法,我可以迭代该方法并在列表中显示项
//Controller code
Class TicketController {
static allowedMethods = [save: "POST", update: "POST", delete: "POST"]
def ticketsByDate = {
return [tickets : Ticket.list(sort: 'dateCreated')]
}
...
GSP code
我以前只开发JavaSE应用程序,现在我正尝试用Grails做一些小项目。我的前端开发技能真的很差。好的,我在Grails中了解了GSP背后的主要思想,但是有很多工具可以简化前端开发,比如Twitter引导
我的问题是,哪些前端工具最适合Grails项目,并且可以自然地与GSP结合
我正在研究的另一个选择是在Flex之类的东西上完成整个前端,在Grails中完成这样的事情有多难?Grails最适合HTML+CSS+JS前端。如果愿意,您仍然可以使用、、等。但标准HTML+现代框架确实更易于使用
我试图使用参考资料1.2.RC3,但每次编译或尝试运行时,都会得到以下提示。我已经运行了一个dependecy报告,它正确地报告了1.2.RC3已经针对那些要求1.1.6或更高版本的内容逐出了1.1.6。这与RC版本有关吗?我有没有办法让它别再问了
您目前已经安装了该插件的一个版本[resources-1.2.RC3]。是否要更新到[resources-1.1.6]?[y,n]
我有没有办法让它别再问了
找出哪个插件正在请求1.1.6,并排除BuildConfig中的可传递依赖项
plugins
我昨天把这件事搞砸了,结果惨败。我想转换:
"/$controller/$action?/$id?"
到
最明显的方法失败了“/$controller/$action?/$id?”
我可以编写正则表达式来实现这一点,但我很难找到使用真正的正则表达式的方法(我找到了,但找不到如何使用它),也找不到关于如何将组分配给变量的文档
我的问题分为两部分:
如何使用真正的正则表达式定义URL资源
如何将“组”绑定到变量。换句话说,如果我定义一个正则表达式,我如何将它绑定到一个变量,比如$controlle
我试图在grails中创建一个应用程序,它很像一个博客应用程序。其中一个要求是应用程序必须支持unicode,用户必须能够使用unicode字符进入博客。我已将数据库更改为“utf8\u unicode\u ci”,当我直接向数据库输入unicode记录时,文本以unicode显示。问题是,当我从应用程序中输入unicode字符时,我得到的只是“??”字符。如何修改应用程序以使其支持unicode字符?可能您没有正确设置数据库url。类似的问题
jdbc:mysql:///dbname?useU
是否可以使用Geb执行CtrlP点击?我试过这样做,但没有达到我的预期:
interact {
keyDown(Keys.CONTROL)
sendKeys("P")
keyUp(Keys.CONTROL)
}
您可以使用WebDriver的key.chord()方法发送非字符按键:
import org.openqa.selenium.Keys
$("input", name: "firstName") <<
我已经在grails应用程序中实现了用于用户身份验证的spring安全服务。
我有Subscriber.groovy(用户表)和Contact.groovy域。一旦订户(用户)登录,他/她就可以创建联系人。订户和联系人域之间有很多关系
问题:我已经在联系人页面上为当前登录的用户或订户创建的联系人实现了搜索功能。它可以正常工作,但它获取系统中的所有联系人,但我只需要由当前登录的订户(用户)创建的联系人。
如何搜索由当前登录的订户创建的联系人
从联系人表中搜索联系人的方法
}
ContactCont
有时,此代码返回空用户对象(第1行),即使springSecurityService.principal.id是有效id。第2行抛出空指针异常,因为用户对象为空。大多数时候代码都能工作,但我不知道是什么导致了空负载
User=User.load(springSecurityService.principal.id)
def contactInstance=BasicProfile.findByUser(用户)
附件是第1行中调用后用户对象的屏幕截图
这可能是由于会话超时造成的吗?如果是这样的话
注意:如果您想查看此演示应用程序的行为,请访问www.collaborativepowernowinternational.us。在这里,选择testssl.PersonController,您可以创建一个人。然后去编辑指定SSL通道的人员,这将产生重定向循环。
在Jetty 9中,似乎有更多的配置项进入了start.ini文件,我的版本是9.05
为了测试最基本的SSL/https,我在start.ini中取消注释以下行:
#==================================
标签: Grails
grails-pluginsearchablegrails-searchable
我对组件t字段的限制有异议。我的模型结构如下
class Category {
String name;
String description;
Date createDate
static hasMany = [items: Item]
static searchable = true
}
及
下面是我的问题
def items = Item.search({
must(queryString(key))
must(term('
我想在我的应用程序中使用init的数据生成器。当使用.save()方法创建对象时,它工作得很好,但当我想使用专用服务时,它不工作,因为空指针而不是注入的服务。这是我的密码:
我已经在conf/spring中定义了数据生成器bean
beans = {
dataGenerator(DataGenerator)
}
我的Bootstrap.groovy看起来像:
class BootStrap {
def dataGenerator
def init = { servletCont
我使用的是Grails2.3.7,有一个控制器方法将请求绑定到命令类。命令类中的一个字段是字符串数组,因为它需要指定具有相同名称的多个参数-例如?foo=1&foo=2&foo=3&bar=0
这在大多数情况下都很有效。失败的一种情况是参数值包含逗号-例如?foo=val1、val2&foo=val3、val4。在本例中,我得到一个具有4个值的数组:[“val1”、“val2”、“val3”、“val4”],而不是[“val1,val2”、“val1,val2”]的预期输出。URL转义/编码逗号
Grails有一个已定义的请求对象
问题是当我尝试使用它时,我得到:
No such property: request for class:xxx
通过谷歌搜索这一错误,阅读前100次点击,只产生了一个建议:
import javax.servlet.http.HttpServletRequest
import org.springframework.web.context.request.ServletRequestAttributes
:
def my() {
HttpServl
我试图给出自定义日志文件的相对路径。但它不工作,如果我从完整的路径给它工作良好
我的代码如下:
log4j = {
appenders {
// append new appenders of your own and add log level and packages/files like to add.
rollingFile name: "myAppender",
maxFileSize: 1024,
我是Grails的新手(主要是Java开发人员),对Grails一窍不通
我最初的经验通常是好的,但我在脚手架功能方面遇到了一些问题
我已经安装了STS(3.5.1.RELEASE),并安装了Grails(2.4.0)和Groovy插件。
我创建了一个域类(Rat)和一个控制器类,并向控制器添加了一个支架
package testnull
class RatController {
static scaffold = Rat
def index() { }
}
我启动了应用
我进行了spock单元测试,并尝试执行服务方法存根以返回域对象列表,下面是在setup fixture中执行的操作:
def themeServiceMock = Mock(ThemeService)
themeServiceMock.getTheme(*_) >> {
return [new Theme(name:'Family', slug:'family'), new Theme(name:'Luxury', slug:'luxury')]
}
此服务被模拟()到另一
这行代码:
def exists = (existingIndRecs.find{ existant -> existant.uniqueId == incomingRecord.uniqueId} ? true : false)
正在编译时导致此错误:
/FileImportService.groovy: 184: expecting ')', found '' @ line 184, column 100.
Id == incomingRecord.uniqueI
我在为一个简单的控制器编写单元测试时遇到了一个问题,我真的在寻求帮助
我的控制器:
package test.controller
import grails.converters.JSON
import grails.rest.RestfulController;
import grails.transaction.Transactional
import groovy.sql.GroovyRowResult
import groovy.sql.Sql
import javax.sql.Da
我有一个带有域模型和hibernate数据源持久性的GrailsWeb应用程序
我现在想在groovy中编写一个命令行工具来访问这个域模型和hibernate数据源
你知道我该怎么做吗
问候
Vanigor您可以使用本文中描述的Spring Boot
该示例创建了一个小型web UI,但可以将引导配置为CLI应用程序
有人能帮我吗?我有两个域名
Class Parent{
static hasMany = [child: Child];
}
Class Child{
}
在数据库中有20条记录。我只想在不刷新页面的情况下获得10条记录。因此我使用了远程分页
普惠制代码是
<util:remotePaginate controller="Parent" action="show"
total="${parentList.size()}"
我刚刚启动了一个Grails2.4.4/SpringSecurity2.0-RC4(插件)应用程序。我使用与Grails 2.3.11/Spring security 1.2.7.3中相同的安全配置:
grails.plugin.springsecurity.password.algorithm = 'bcrypt'
grails.plugin.springsecurity.password.bcrypt.logrounds = 31
这取决于启动——至少我是这么想的。真的,当20年代的原木轮
如何提供远程文件的下载?
可以通过SMB(jcifs)访问该文件。我可以读取文件的属性。但如何将其发送到用户浏览器
这不起作用:
render(contentType: 'application/zip',file: new File(FullPath), fileName: domainInstance.getFilename())
全路径是什么样子的smb://user:pass@server.domain.com/root/Files/Dowanload.zip
通过works访问文件:
我想在同一个实体之间创建一个多对多的关系
class Device {
static hasMany = [devices: Device]
}
但那只剩下一对多了。我怎样才能做到这一点?
我知道在两个域之间有很多多对多的例子,或者在不同的域中有两组相同域的链接时有很多对多的例子,但是我在任何地方都找不到这样的例子。你可以用另一个设备列表创建一种被黑客攻击的多对多
class Device {
static hasMany = [devicesOwnedBy: Device,
我最近尝试将我的Grails应用程序部署到Amazon Web服务(Elastic Beanstalk),但失败了。我相信我与亚马逊RDS的连接是正确的。你可以在下面看到我的配置。有趣的是,当我在虚拟服务器上的EclipseIDE中构建这个项目时,没有任何错误,它连接到AWS的数据库也很好
environments {
production {
dataSource {
pooled = true
username = "u
标签: Grails
grails-plugingrails-2.0grails-2.4gant
我正在编写一个定制的Grails2插件来模块化我的Grails应用程序。在插件中,我计划定义基本的GSP,它可以被使用插件的应用程序覆盖。我正在考虑编写一个Grails命令脚本,将这些gsp复制到安装插件的应用程序的grailsapp目录中。如果在插件中,我将这些GSP放在grails app/views中,那么如何在grails命令脚本中引用实际的grails app目录,这也是grails app/views?解决方案与。内置属性basedir和PluginBaseDir区分目标应用程序和插
我正在尝试使用grails和neo4j开发一个示例应用程序。我正在使用Grails3.0.8。我已经安装了neo4j插件,并按照文档中提到的说明进行了操作。我已更新application.yml以包含neo4j凭据。我的application.yml看起来像这样
---
grails:
profile: web
codegen:
defaultPackage: sftwitter
info:
app:
name: '@info.app.name@'
前两个文件是“SmsController.groovy”和“applicationContext.xml”,我认为这是导致错误的原因
'smscocontroller.groovy':
package nexmo
import grails.plugin.nexmo.NexmoException
class SmsControllerController {
// Inject the service
def nexmoService
def smsResult
def index()
我在Grails3.0.9应用程序中工作,并在默认包中创建服务和控制器。我想用我的记录器记录它们,但记录器要求提供包名。我想从应用程序中显示所有级别的日志。我将root logger设置为All,booom它显示了整个grails框架日志。我只需要我的应用程序日志。请为我的日志记录问题向我推荐一个好的解决方案。将您的类移动到包。将您的类移动到包。我做了亲爱的,但我想学习默认包解决方案。我做了亲爱的,但我想学习默认包解决方案。
我有域类工作包、活动和aw
如何从工作包中获取活动id值
class Aw {
Activity activity
static hasMany=[activity:Activity]
Workpackage workpackage
static belongsTo=[workpackage:Workpackage]
static constraints = {
workpackage nullable:true
我正试图用NuoDB构建一个基于gorm的groovy项目。但出现此错误-无法确定数据库名称[NuoDB]的Hibernate方言
奇怪的是,它与mysql一起工作。因此,我最初怀疑的是NuoDB的数据库配置,但我检查并重新检查了配置参数,如这里提供的
我还将grails-datastore-gorm-hibernate4版本从1.1.0升级到了3.1.1.RELEASE,正如这里讨论的同一问题一样
我正在构建的应用程序基于使用gorm standalone(不含grails)的示例-
我无法理
使用Grails3.2.3/3.2.6,我遇到了一个问题,在Resources.groovy中配置的某些bean没有被注入到该文件中定义的服务中。
在现实生活中,这些配置的服务之一是由测试环境中的测试邮件服务交换的邮件,另一个是执行器服务,以确保异步进程在测试模式下同步完成。电子邮件是一个异步进程,它使用其他服务
我有一个控制器一个控制器:
class OneController {
def theService
def theOtherService
def ind
在Grails2中,我有一个gradle任务,可以执行模式导出
task extractGrailsdll(类型:org.grails.gradle.plugin.tasks.GrailTask){
命令“模式导出”
参数ddlFileName(“Temp”)+“--datasouce=operator”
}
grails 3的grails.gradle.plugin中不存在org.grails.gradle.plugin.tasks.grailTask
如何编写Gradle任务来运行模式导出
我正在尝试使用war命令部署grails3web应用程序。开发版本显示了正确的样式表,在生产服务器上部署后,它会把一切都搞砸。由于css和JavaScript被缩小了,我无法真正解决问题…图像开发版本中的示例
生产版本
我使用上面的代码来显示选项卡和下面的css
#tabsF{
浮动:左;
宽度:100%;
背景:#efef;
字体大小:100%;
线高:正常;
边框底部:1px实心#666;
}
#塔布斯福酒店{
右侧填充:10px;左侧填充:10px;底部填充:0px;边距:0px;顶部
要向grails 3应用程序添加身份验证,请将以下内容添加到build.gradle:
compile 'org.grails.plugins:spring-security-core:3.2.3'
然后跑
grails s2-quickstart com.myapp Operator Role
这将创建3个域对象,但我找不到其他对象
操作员域对象如下所示:
package com.myapp
importgroovy.transform.EqualsAndHashCode
import
1 2 3 4 5 6 ...
下一页 最后一页 共 284 页