applicationContext в Config.groovy - PullRequest
0 голосов
/ 01 июня 2011

возможно получить доступ к applicationContext в файле конфигурации?!

То, что я пытаюсь сделать, это получить полный путь (путь к серверу) для моего приложения!

В значительной степени я хочуэто:

/usr/tomcat/myapp/web-inf

Ответы [ 2 ]

1 голос
/ 03 июня 2011

Если решение @ Ben getRealPath () не помогает, попробуйте собрать воедино абсолютный путь на основе базового свойства catalina:

def path = System.getProperty("catalina.base") + 'relative/path/to/app'
0 голосов
/ 01 июня 2011

Возможно, я неправильно понял ваш вопрос, но я думаю, вы пытаетесь получить 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()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...