gpt4 book ai didi

grails - Grails,在运行时查找可用的 View (.gsp)

转载 作者:行者123 更新时间:2023-12-02 13:54:27 32 4
gpt4 key购买 nike

grails应用程序是否有一种简单的方法来找到运行时可用的可用 View 列表(* .gsp)。

理想情况下,一种解决方案对于打开WAR的应用程序服务器和不打开WAR的应用程序服务器都适用。

谢谢!

最佳答案

不幸的是,对于开发环境和在 war 中部署时,它是不同的:

import org.codehaus.groovy.grails.web.context.ServletContextHolder as SCH

def gsps = []
if (grailsApplication.isWarDeployed()) {
findWarGsps '/WEB-INF/grails-app/views', gsps
}
else {
findDevGsps 'grails-app/views', gsps
}

private void findDevGsps(current, gsps) {
for (file in new File(current).listFiles()) {
if (file.path.endsWith('.gsp')) {
gsps << file.path - 'grails-app/views/'
}
else {
findDevGsps file.path, gsps
}
}
}

private void findWarGsps(current, gsps) {
def servletContext = SCH.servletContext
for (path in servletContext.getResourcePaths(current)) {
if (path.endsWith('.gsp')) {
gsps << path - '/WEB-INF/grails-app/views/'
}
else {
findWarGsps path, gsps
}
}
}

关于grails - Grails,在运行时查找可用的 View (.gsp),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1577872/

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