Grails groovyPageRenderer错误:无法在null对象

时间:2015-08-10 22:59:05

标签: grails grails-2.0

我无法让Grails groovyPage Renderer在没有此错误的情况下工作。我尝试了一些不同的解决方案但似乎无法解决它。我已经在Grails 2.1.1和2.4.4上使用servlet 2.5和3.0进行了尝试。试图按照下面的博客上的例子。

http://mrhaki.blogspot.com/2012/03/grails-goodness-render-gsp-views-and.html

来源:

class RenderTestController {

    static allowedMethods = [save: "POST", update: "PUT", delete: "DELETE"]

    def renderEx {
        def updateList= RenderService.updateRender()
    }

服务:

package renderexample

import grails.gsp.PageRenderer
import java.util.List;
import java.util.Map;

class RenderService {

    public static List updateRender() {

        PageRenderer groovyPageRenderer
        def gspReturn = []

        gspReturn = [-1, 1, 2]

        def htmlBody = groovyPageRenderer.render(template:'/emails/_renderUpdate', model: [results: gspReturn])

        println htmlBody

        return gspReturn
    }
}

错误2015-08-10 15:39:45,801 [localhost-startStop-1]错误context.GrailsContextLoaderListener - 初始化应用程序时出错:使用名称' renderexample.RenderTestController创建bean时出错&#39 ;: bean的实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化bean类[renderexample.RenderTestController]:构造函数抛出异常;嵌套异常是java.lang.NullPointerException:无法在null对象上调用render()方法

消息:使用名称' renderexample.RenderTestController创建bean时出错':bean的实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化bean类[renderexample.RenderTestController]:构造函数抛出异常;嵌套异常是java.lang.NullPointerException:无法在null对象上调用render()方法     线|方法 - >> 262 |在java.util.concurrent.FutureTask中运行

感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:1)

我不知道为什么你希望updateRender方法是静态的。没有充分的理由这样做。

尝试这样的事情......

class RenderTestController {

    def renderService

    def renderEx() {
        def updateList= renderService.updateRender()

        // ...
    }

}

class RenderService {

    PageRenderer groovyPageRenderer

    List updateRender() {

        def gspReturn = []

        gspReturn = [-1, 1, 2]

        def htmlBody = groovyPageRenderer.render(template:'/emails/_renderUpdate', model: [results: gspReturn])

        // ...
    }
}