grails - 搭建第一个 Grails 应用程序时出现 NullPointer 异常

标签 grails

从 Grails 开始,我已经安装了 Grails 版本 2.4.0,并在 GNU/Linux 上使用 JDK 1.7.0_55,我执行了以下一系列操作,但不断收到 NullPointerException。有人可以指出我遗漏或做错了什么吗?

grails create-app firstgrails

cd firstgrails

grails

grails> run-app

我转到 localhost:8080/firstgrails 并查看生成的页面。

接下来我会

grails> create-domain-class tag

然后转到firstgrails/grails-app/domain/firstgrails 文件夹并编辑Tag.groovy,使其包含:

// Tag.groovy
package firstgrails

class Tag {
    String name
    String description
}

下一步

grails> create-controller tag

并将firstgrails/grailsapp/controllers/firstgrails/TagController.groovy 编辑为

// TagController.groovy
package firstgrails

class TagController {
    static scaffold = Tag
}

我在浏览器中重新加载,并且firstgrails.TagController被添加到可用列表中 欢迎消息下的 Controller 。选择它,我创建一个包含名称和描述的标签,并且该标签按预期显示在标签列表中。但现在每当我尝试添加第二个标签时,我都会收到 500 错误:Internal Server Error with

URI: /firstgrails/tag/create
Class: java.lang.NullPointerException
Message: null

控制台中的跟踪是:

 Error 2014-06-03 18:28:31,714 [http-bio-8080-exec-2] ERROR errors.GrailsExceptionResolver  - NullPointerException occurred when processing request: [GET] /firstgrails/tag/create
Stacktrace follows:
Message: Error processing GroovyPageView: Error executing tag <g:form>: Error executing tag <g:render>: null
    Line | Method
->>  527 | doFilter  in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by GrailsTagException: Error executing tag <g:form>: Error executing tag <g:render>: null
->>   35 | doCall    in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by GrailsTagException: Error executing tag <g:render>: null
->>   30 | doCall    in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by NullPointerException: null
->>  333 | hash      in java.util.concurrent.ConcurrentHashMap
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    988 | get       in     ''
|    141 | getValue  in grails.util.CacheEntry
|     81 | getValue  in     ''
|     73 | doCall .  in tag_create$_run_closure2_closure24
|     78 | doCall    in tag_create$_run_closure2
|     81 | run . . . in tag_create
|    189 | doFilter  in grails.plugin.cache.web.filter.PageFragmentCachingFilter
|     63 | doFilter  in grails.plugin.cache.web.filter.AbstractFilter
|   1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
|    615 | run . . . in java.util.concurrent.ThreadPoolExecutor$Worker
^    745 | run       in java.lang.Thread
| Error 2014-06-03 18:30:33,050 [http-bio-8080-exec-9] ERROR errors.GrailsExceptionResolver  - NullPointerException occurred when processing request: [GET] /firstgrails/tag/create
Stacktrace follows:
Message: Error processing GroovyPageView: Error executing tag <g:form>: Error executing tag <g:render>: null
    Line | Method
->>  527 | doFilter  in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by GrailsTagException: Error executing tag <g:form>: Error executing tag <g:render>: null
->>   35 | doCall    in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by GrailsTagException: Error executing tag <g:render>: null
->>   30 | doCall    in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by NullPointerException: null
->>  333 | hash      in java.util.concurrent.ConcurrentHashMap
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    988 | get       in     ''
|    141 | getValue  in grails.util.CacheEntry
|     81 | getValue  in     ''
|     73 | doCall .  in tag_create$_run_closure2_closure24
|     78 | doCall    in tag_create$_run_closure2
|     81 | run . . . in tag_create
|    189 | doFilter  in grails.plugin.cache.web.filter.PageFragmentCachingFilter
|     63 | doFilter  in grails.plugin.cache.web.filter.AbstractFilter
|   1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
|    615 | run . . . in java.util.concurrent.ThreadPoolExecutor$Worker
^    745 | run       in java.lang.Thread
| Error 2014-06-03 18:32:21,796 [http-bio-8080-exec-5] ERROR errors.GrailsExceptionResolver  - NullPointerException occurred when processing request: [GET] /firstgrails/tag/create
Stacktrace follows:
Message: Error processing GroovyPageView: Error executing tag <g:form>: Error executing tag <g:render>: null
    Line | Method
->>  527 | doFilter  in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by GrailsTagException: Error executing tag <g:form>: Error executing tag <g:render>: null
->>   35 | doCall    in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by GrailsTagException: Error executing tag <g:render>: null
->>   30 | doCall    in /tag/create
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Caused by NullPointerException: null
->>  333 | hash      in java.util.concurrent.ConcurrentHashMap
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    988 | get       in     ''
|    141 | getValue  in grails.util.CacheEntry
|     81 | getValue  in     ''
|     73 | doCall .  in tag_create$_run_closure2_closure24
|     78 | doCall    in tag_create$_run_closure2
|     81 | run . . . in tag_create
|    189 | doFilter  in grails.plugin.cache.web.filter.PageFragmentCachingFilter
|     63 | doFilter  in grails.plugin.cache.web.filter.AbstractFilter
|   1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
|    615 | run . . . in java.util.concurrent.ThreadPoolExecutor$Worker
^    745 | run       in java.lang.Thread

最佳答案

我尝试过并能够重现它。如果我们生成 View ,那么它就可以解决,但如果没有 View ,则会出现错误。 grails jira 中存在问题,请参阅 this issue他们已经为其提供了补丁。

希望这有帮助。

关于grails - 搭建第一个 Grails 应用程序时出现 NullPointer 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24020887/

相关文章:

POST 成功后 Android 不 toast

testing - 如何在 Grails 集成测试中使用不同的数据发出多个请求

tomcat - 部署错误无法创建类 [SearchableGrailsPlugin] 的新实例!

grails - 自动重新加载模板文件

服务的 Grails Session 范围未按预期工作

grails - 什么决定了 .grails 目录的位置?

grails - Grails 3.0.x-通用布局数据(菜单)

grails - 从GSP打开新窗口并转发到外部URL

android - 使用来自 android 应用程序的 spring-security-facebook grails 插件

grails - Grails 2.4.4-休眠异常