我有一個關於嘗試向我的spring mvc控制器注入環境變量的問題。試圖加載環境變量的春天
我有一個環境變量如下...
POS_MANAGER_SERVER_REPORTING = MYSERVER
在我的Spring應用程序上下文我有...
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
p:systemPropertiesModeName="SYSTEM_PROPERTIES_MODE_OVERRIDE"
p:searchSystemEnvironment="true"/>
<bean name="posManagerController"
class="com.mycompany.reporting.controller.PosManagerController"
p:posManagerServer="${POS_MANAGER_SERVER_REPORTING}" />
當我沒有定義的系統變量在websphere中,應用程序無法正常啓動。當我添加它所做的變量。但由於某些原因,注入到我的控制器中的值爲空。
有人可以幫我解決這裏可能出現的問題嗎?即爲什麼環境變量未正確加載?
只是爲了給你更多的信息,Controller使用@Controller註解加載到子上下文(-servlet.xml)中,但在父上下文(applicationContext.xml)中,我也有如上面出現的控制器定義。我的理解是,春天足夠聰明,能夠處理這個問題。我列出了這些信息,以防萬一這可能是問題的原因。
感謝
你可以顯示你的'posManagerServer'部分控制器嗎? –
爲什麼你在這兩種情況下都擁有該控制器?你真的應該只保留'-servlet.xml'部分並在那裏處理'posManagerServer'(使用'@Value'或類似的東西)。 –
安德烈,使用@Value我可以得到一個系統環境變量? – Richie