Grails app - 为weblogic托管应用设置context-root

时间:2015-12-18 10:34:14

标签: tomcat grails weblogic contextroot

我有一个应用程序,我希望部署到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中使用设置?

1 个答案:

答案 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