grails - NumberFormatException对于尝试在grails中进行日期搜索时的输入字符串

标签 grails gorm

我从gsp View 中得到一个带有日期和时间的字符串:

def name = params.name
def time = params.minutes
def date = params.datapicker

现在,我想按日期和名称在我的域中进行搜索。因此,我加入日期和时间并进行搜索:
def dataSearch = date + " " + time
MyDomain result= MyDomain.findByNameAndDateCreatedGreaterThan(name, dataSearch)

但是,我收到此错误:
2016-05-26 09:56:44,488 [http-bio-8090-exec-3] ERROR errors.GrailsExceptionResolver  - NumberFormatException occurred when processing request: [POST] /myClass/search- parameters:

name: Bob
minutes: 18:17:42
button: search
datapicker: 2016-04-28
For input string: "2016-04-28 18:17:42". Stacktrace follows:
Message: For input string: "2016-04-28 18:17:42"
    Line | Method
->>   65 | forInputString in java.lang.NumberFormatException

最佳答案

将您的String转换为Date,然后再将其传递给findByNameAndDateCreatedGreaterThan,例如

def dataSearch = date + " " + time
Date date = Date.parse('yyyy-MM-dd HH:mm:ss', dataSearch)
MyDomain result = MyDomain.findByNameAndDateCreatedGreaterThan(name, date)

关于grails - NumberFormatException对于尝试在grails中进行日期搜索时的输入字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37456277/

相关文章:

grails - 在插件中封装服务

jquery-ui - 在jquery标签中显示Grails域

grails - Grails安全检查

grails - 使用 'join'第三类使许多人陷入困境

grails - Grails 2.5在服务类上设置数据源不起作用

javascript - Grails,通过单击表格行中的列来执行javascript

mongodb - Grails Mongodb静态集合访问

grails - Grails条件查询检查 `OR`逻辑

java - 使用 `where values in list`的Grails GORM 3.2.0查询

grails - 具有命名参数的findAll异常