2010-02-11 3 views
1

Greetings,Весенний контекст приложения: переменная папки webapp?

Есть ли переменная весны для папки веб-приложения? Я хочу присвоить свойство bean как следующее.

Где $ {WEBAPP-FOLDER} - это абсолютный путь к папке веб-приложения.

Любые советы?

<bean id="compass" class="org.compass.spring.LocalCompassBean"> 
      . 
       . 
       <prop key="compass.engine.connection">file:///${WEBAPP-FOLDER}/WEB-INF/searchIndex</prop>  
</bean> 

ответ

3

Нет, но вы можете получить его через ServletContextListener, позвонив по телефону

event.getServletContext.getRealPath("/") 

Теперь вы можете установить его в static переменной (которая будет логически быть константой), или получить приложение пружины контекст и установить его вручную (через WebApplicationUtils) в bean-компоненте.

+0

Спасибо Bozho, поэтому, если я установил его в статической переменной (скажем, public static String WEBAPPFOLDER) в Listener, как можно получить доступ к ней весной? просто $ WEBAPPFOLDER? –

+0

ну, а не весна - вы получите доступ к нему непосредственно 'MyStaticHolder.WEBAPPFOLDER' - он не будет известен, чтобы весна, только что известная вам. – Bozho

Смежные вопросы