GrailsPageFilter 未导入 -Grails 4.x.x

GrailsPageFilter is not Importing -Grails 4.x.x

import org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter 

此库已导入并在 Grails 上运行良好 2.x.x 但是当我尝试在 Grails 上导入它时 4.x 它没有导入!

如何在 Grails 4.x.x 上导入 is?或者需要解决方案。

当前正在使用此依赖项:

compile group: 'org.codehaus.groovy', name: 'groovy-dateutil', version: '2.5.0'

代码:

def buttonDropDown = { attrs, body ->
        def id = attrs.id
        def r = grailsApplication.mainContext.getBean('org.grails.plugin.resource.ResourceTagLib')
        r.require(module: "jquery-ui")


        StringBuilder builder = new StringBuilder();
        builder.append('<button ')
                .append('id="' + id + '">')
                .append(body).append('</button>')
        StringBuilder jsbuilder = new StringBuilder();
        jsbuilder.append(' <script type="text/javascript">')
                .append(' $(document).ready(function(){')
                .append(' $("#' + id + '").button({icons: {primary: "ui-icon-locked"},text: true);')
                .append(' });')
                .append('</script>')

        def headerWriter = getHeaderWriter()
        headerWriter << jsbuilder
        out << builder.toString()

    }

    private getHeaderWriter() {
        def gspSitemeshPage = request[GrailsPageFilter.GSP_SITEMESH_PAGE]
        def headBuffer = gspSitemeshPage.metaClass.getProperty(gspSitemeshPage, 'headBuffer')
        return headBuffer.writer
    }

您可以使用 import org.grails.web.sitemesh.GrailsLayoutViewGrailsLayoutView.GSP_SITEMESH_PAGE.

而不是 import org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter GrailsPageFilter.GSP_SITEMESH_PAGE