【问题标题】:Using GroovyPagesTemplateEngine without a request?在没有请求的情况下使用 GroovyPagesTemplateEngine?
【发布时间】:2011-12-06 14:46:38
【问题描述】:

我正在尝试在没有真正的 http 请求的情况下评估 GSP 文件。我正在尝试这个:

String compileGsp(File input) {
        def text = ''
        try{
            text = groovyPagesTemplateEngine.createTemplate(input).make().toString()
        }
        catch( Exception e ){
            StackTraceUtils.sanitize(e).printStackTrace()
        }

        return text
    }

但这会引发异常并产生:

java.lang.IllegalStateException:未找到线程绑定请求:是 您指的是实际 Web 请求之外的请求属性, 或在原始接收线程之外处理请求?如果 你实际上是在一个网络请求中操作并且仍然收到这个 消息,您的代码可能在 DispatcherServlet/DispatcherPortlet:在这种情况下,使用 RequestContextListener 或 RequestContextFilter 暴露当前 请求。

如何在没有请求的情况下评估 GSP?如果我使用SimpleTemplateEngine,我会获得一些功能,但我会丢失所有标签库,其中包括像<g:each> 这样的请求无效标签

【问题讨论】:

    标签: grails groovy template-engine gsp


    【解决方案1】:

    我猜你可以模拟网络请求。这个posting 可能就是你要找的。​​p>

    【讨论】:

    • 我用谷歌搜索并找不到这个。我什至尝试设置 MockRequest 和 MockResponse。我想这篇文章会更好地进行 SEO 以供将来查询。 :P
    猜你喜欢
    • 1970-01-01
    • 2017-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    • 2013-03-18
    相关资源
    最近更新 更多