grails - 阅读gsp模板时出现NullPointerException

标签 grails groovy

以下是已创建的gsp模板解析方法:

String renderGSPTemplate(String templateText, Map bindings){
        def output = new StringWriter()
        String pageName = bindings.remove('pageName')
        groovyPagesTemplateEngine.clearPageCache()
        Template template1 = groovyPagesTemplateEngine.createTemplate(templateText, pageName)
        Writable data = template1.make(bindings)
        data.writeTo(output)
        return output
    }

以下是我得到的异常(exception):
 Error java.lang.NullPointerException
| Error     at org.codehaus.groovy.grails.web.pages.GroovyPageOutputStack.lookupStack(GroovyPageOutputStack.java:102)
| Error     at org.codehaus.groovy.grails.web.pages.GroovyPageOutputStack.currentStack(GroovyPageOutputStack.java:76)
| Error     at org.codehaus.groovy.grails.web.pages.GroovyPage.initRun(GroovyPage.java:213)
| Error     at org.codehaus.groovy.grails.web.pages.GroovyPageWritable.doWriteTo(GroovyPageWritable.java:199)
| Error     at org.codehaus.groovy.grails.web.pages.GroovyPageWritable.writeTo(GroovyPageWritable.java:128)
| Error     at groovy.lang.Writable$writeTo.call(Unknown Source)
| Error     at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45)
| Error     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
| Error     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
| Error     at com.verecloud.nimbus4.mail.TemplateParserService$$EPpsYO6i.renderGSPTemplate(TemplateParserService.groovy:37)

任何人都知道此错误的原因。

谢谢!

最佳答案

groovyPagesTemplateEngine使用HttpRequest,因此,如果我们没有从Web应用程序进行调用,它将失败并显示NullPointerException。

因此,使用NPE失败了

关于grails - 阅读gsp模板时出现NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38168194/

相关文章:

mysql - 从 Grails 访问 MySQL 服务器

grails - 如何在存储在数据库中的Grails中读取上载文本文件

grails - Grails脚本中的HttpBuilder

java - Groovy 更新导致 PermGen 中大量死亡 GroovyClassLoader

unit-testing - Grails单元测试模拟服务返回无效对象

java - 为 Android 构建时,Unity 项目的 Gradle 构建失败

Grails transient 属性未在对象创建时获取

grails - 启动Grails时出现错误

grails - 访问 Grails 全局变量时是否需要使用互斥锁?

java - 在 .java 文件中编写 Groovy 代码