我有一个应用程序,我希望部署到weblogic服务器。在不调整上下文根的情况下,可以通过http://{IP}:{port}/{war fileName}
访问它。我希望调整上下文根目录,以便我可以将版本号保留在war文件的名称中,以便显而易见地使用哪个版本,但可以通过http://{IP}:{port}/{appName}
我尝试在application.properties中设置app.context=/{appName}
,并在Config.groovy中设置grails.app.context = "/{appName}"
,正如其他答案所暗示的那样,尽管这些似乎都没有任何效果:
How to deploy a grails app with a different context path
How to deploy Grails app without context path?
我已经尝试过在本地运行,在tomcat服务器上运行,以及在weblogic服务器上运行 - 它在本地运行时似乎有所不同(是的,它在生产环境设置中,而不仅仅是开发)。
我还尝试在WEB-INF目录中添加weblogic.xml文件,内容为:
<?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 :(得分: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'
然后在bootstrap中我像这样使用它
grailsApplication.config.salesreplocator.dataDir