2013-03-15 55 views
0

我已經得到了應有的開發和生產方式不同的參數值類使用。據我知道我可以使用facesconfig.xml傳遞PARAMS到ManagedBeans但我使用註釋,而不是* .XML配置文件和我不希望混合這兩種解決方案。什麼是最好的解決方案呢?我想使用內置的JavaEE/JSF機制而不是創建新的配置文件。我會很感激的建議。配置參數類對開發/生產

我的應用程序使用JSF2/JPA和部署OpenShift服務器上。

回答

3

您可以使用@ManagedProperty註解來獲取上下文參數:

@ManagedProperty(value = "#{initParam['javax.faces.PROJECT_STAGE']}" 
private String stage; 

// getter and setter 

stage領域有一定的價值DevelopmentProduction所以要根據您的意願使用。

+0

感謝。我會盡量使用它。你能告訴我什麼是轉嫁生產/發展模式不同PARAMS而不需要重新編譯應用程序(*的.war)的最佳解決方案? – pepuch 2013-03-15 10:52:56

+1

@pepuch您可以添加全局資源(例如Tomcat中的server.xml中添加)和讀取JNDI該屬性('initialContext.lookup(的 「java:comp/env的/ MYVAR」)')。對於你的服務器請參考它的手冊,我不熟悉OpenShift。 – partlov 2013-03-15 11:29:01

+0

非常感謝! – pepuch 2013-03-15 11:34:07