2011-02-10 38 views
3

我已经看到关于如何使用grails.config.locations为Grails配置指定外部.groovy和.properties文件的问题和答案,但是我们需要不在服务器上的外部配置容器(Tomcat)正在运行。 (它确实有一个本地FS,但它不具有持久性,并且对于所有部署环境都是相同的 - 因此需要在WAR,容器和服务器外部覆盖它)。Grails如何通过HTTP加载WAR外部配置?

那么,我可以使用http:URL为grails.config.locations?

回答

4

是的。以下工作:

在Config.groovy中添加此项,并使用-D将PARAM1传递给JVM以指定配置文件的外部URL。

grails.config.locations = ["url:" + System.properties["PARAM1"]] 
+1

为此,请确保URL以'.groovy'或'.properties'结尾。 –

+0

你能举一个完整的例子来说明这个位置应该是什么样子吗?使用grails 1.3.7 url:http://www.someplace.com/Config.groovy似乎不起作用。 –

1

我不知道任何内置的功能,可以让你指定URL为grails.config。然而,似乎喜欢的事,你可以实现你自己:你要使用d /升包含在你的战争

  • 在相同的Congif.groovy文件

    • 定义网址(S) Config.groovy脚本,编写代码将文件下载到服务器文件系统上的特定位置(请参阅this article
    • 将您的grails.config.locations设置为指向您编写Config.groovy文件的文件系统位置。

    我还没有尝试过,但似乎它会工作。