2015-12-18 3 views
0

У меня есть приложение, которое я ищу для развертывания на веб-сервере. Без применения корня контекста он доступен через http://{IP}:{port}/{war fileName}. Я хочу настроить корень контекста так, чтобы я мог сохранить номер версии в имени моего файла войны, поэтому он совершенно очевидно, какая версия используется, но доступна через http://{IP}:{port}/{appName}Приложение Grails - set context-root для веб-хостинга размещено приложение

Я попытался установить app.context=/{appName} в приложении. свойства и настройки grails.app.context = "/{appName}" внутри Config.groovy другие ответы предложили, хотя ни один из них, кажется, никакого эффекта:

How to deploy a grails app with a different context path

How to deploy Grails app without context path?

Я попробовал эту Runnin g локально, работая на сервере tomcat и на сервере weblogic - и это только кажется, что имеет значение при запуске локально (да, это в настройках производственной среды, а не только для разработки).

Я также попытался добавить weblogic.xml файл в директории WEB-INF, с содержанием:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"> 
    <context-root>/YOUR_CONTEXT_ROOT</context-root> 
</weblogic-web-app> 

Это желаемый эффект, когда на сервере WebLogic, но я пытался избежать имея файлы, специфичные для weblogic, которые он когда-либо развертывал на другом сервере.

Я что-то упустил? Существуют ли какие-либо другие изменения, которые необходимо внести для получения настроек в application.properties или Config.groovy для использования?

ответ

0

Вот пример, который работает для меня. Grails 3.0.9. Tomcat 8. В файле application.yml. У меня настроен такой сервер.

staging: 
    localdir: 
     dataDir: 'C:\\java\\data\\' 
    grails.serverURL: 'http://xxx.xxx.xxx.xxx:8080/myappname' 
    server: 
     port: 8080 
     contextPath: '/myappname' 

Тогда в загрузчике я использовать его как этот

grailsApplication.config.salesreplocator.dataDir 
Смежные вопросы