gpt4 book ai didi

grails groovyPageRenderer 注入(inject) src/groovy 中的文件

转载 作者:行者123 更新时间:2023-12-02 15:46:17 25 4
gpt4 key购买 nike

我想在 src/groovy/GSPFormatter 中注入(inject) groovyPageRenderer,
如果不调用新的构造函数,我怎么能做到这一点?

编辑

package gsprenderer
import spud.core.FormatterInterface
import grails.gsp.PageRenderer

class GSPFormatter implements FormatterInterface {

PageRenderer groovyPageRenderer = grailsApplication.mainContext.getBean('groovyPageRenderer')

String compile(String content) {
groovyPageRenderer.render(view: new ByteArrayOutputStream().write(content.bytes), null)
}
}

是我在 src/groovy/GSPFormatter 中的代码(基本上使用默认的注入(inject)机制,它也不起作用)

最佳答案

我想,你指的是grails.gsp.PageRenderer ...顺便说一句,我正在使用 Grails 3.3.0

这是一个小( 测试 )示例 -

在 application.yml

grails:
spring:
bean:
packages:
- ovr

在 scr/groovy/ovr
package ovr.renderer

import grails.gsp.PageRenderer
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.stereotype.Component

@Component
class CustomRenderer {
@Autowired
PageRenderer pageRenderer

def page(){
pageRenderer.render(view: '/myrenderer', model: [hello: 'hello'])
}

}

在 Controller 中
@Autowired
CustomRenderer customRenderer

def myPage(){
render customRenderer.page()
}

在 View /myrenderer.gsp
${hello}

相关帖子 -

Accessing Grails services from src/groovy

How to inject Grails services into src/groovy classes

PS - 如果你描述你的 bean/conf/spring/resources.groovy请转义 application.yml 中的部分(上面给出)

关于grails groovyPageRenderer 注入(inject) src/groovy 中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47485529/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com