2012-06-13 79 views
0

有沒有辦法在構建戰爭時包含環境特定的屬性或配置文件。播放框架1.2.4戰爭環境特定配置文件

QA

entity.url = HTTP://qa.test ..

督促

entity.url = HTTP://督促...

我需要進行5到6次REST呼叫。每個環境的網址都不相同。因此有什麼辦法可以配置環境特定的conf文件?

在此先感謝

回答

0

不是我所知道的(和讀取Python源建設的戰爭並不表示這是可用的)。戰爭文件只是按照原樣構建您的Play應用程序。如果你想要有不同的配置,那麼這可能只需要從外部資源(WAR文件,WAR文件附帶的屬性文件)中加載它。

或者,您可以修改構建WAR文件的python腳本,以便爲文件自定義添加其他屬性。查看目錄framework/pym/commands/並查看war.py以閱讀python war命令的源代碼。

+0

感謝您的提示,將看看它。 Incase,如果我修復它,將發佈解決方案 – amj

+0

我確實使用maven和過濾器解決了這個問題。 Maven play插件可用於創建戰爭。同時可以應用環境特定的過濾器 – amj

1

的遊戲框架具有可用於不同的模式「IDS」的概念在這裏看到: http://www.playframework.org/documentation/1.2.4/ids

這可以讓你做的事:

%qa.entity.url=http://qa.test.. 
%prod.entity.url=http://qa.test.. 

一個東西,可能不通過他們的文檔清楚地說明如何在戰爭中設定這一點。以.war文件運行時,默認情況下,播放ID設置爲「war」。這可以在.war文件的web.xml中更改。你可以這樣做,或者你可以在創建戰爭時指定ID:

play war -o PATH --%prod