возможен ли доступ к applicationContext в конфигурационном файле?!
Я пытаюсь получить полный путь (путь к серверу) для моего приложения!
В значительной степени я хочу:
/usr/tomcat/myapp/web-inf
возможен ли доступ к applicationContext в конфигурационном файле?!
Я пытаюсь получить полный путь (путь к серверу) для моего приложения!
В значительной степени я хочу:
/usr/tomcat/myapp/web-inf
Если решение @Ben getRealPath() не помогает, попробуйте собрать абсолютный путь на основе базового свойства каталины:
def path = System.getProperty("catalina.base") + 'relative/path/to/app'
Возможно, я неправильно понял ваш вопрос, но я предполагаю, что вы пытаетесь получить 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()
}