Возможно, я неправильно понял ваш вопрос, но я думаю, вы пытаетесь получить URL вашего веб-приложения, похожий на этот: http://localhost:8080/myawesomeapp
. Config.groovy
имеет встроенную опцию grails.serverURL , но это не дает вам подтекст веб-приложения. Результат будет http://localhost:8080
. Мне не известен другой вариант, который также предоставил бы вам полный URL-адрес контекста веб-приложения.
В качестве альтернативы, вы всегда можете использовать такой метод в контроллере Grails, который даст вам полный URL-адрес веб-приложения:
def getContextUrl(HttpServletRequest httpServletRequest) {
String scheme = httpServletRequest.scheme
String serverName = httpServletRequest.serverName
int serverPort = httpServletRequest.serverPort
String contextPath = httpServletRequest.contextPath
def url = new StringBuilder()
url <<= '://'
url <<= serverName
if(serverPort && serverPort != 80) {
url <<= ':'
url <<= serverPort
}
url.toString()
}