2010-02-01 4 views
14

Greetings,Весенний контекст приложения: доступ к контекстным параметрам web.xml?

Есть ли способ получить значения из контекста-парама web.xml в контексте Spring?

Например я определяю значение в web.xml как:

<context-param> 
    <param-name>compass-index</param-name> 
    <param-value>file:///home/compass/index</param-value> 
</context-param> 

И я хочу, чтобы присвоить это значение боба-свойства, как:

<bean ...> 
<props> 
    <prop key="compass.engine.connection"> 
    ${from web.xml context-param?} 
    </prop> 
</props> 
</bean> 

Спасибо заранее?

ответ

24

Да - ServletContextPropertyPlaceholderConfigurer

This article объясняет детали. Короче говоря, вам нужно:

<bean class="org.springframework.web.context.support.ServletContextPropertyPlaceholderConfigurer"> 
</bean> 

, а затем использовать свойство, как:

<bean ...> 
    <property name="compassIndex" value="${compass-index}" /> 
</bean> 

или с @Value("${compass-index}")

+0

Большого спасибо Bozho –

+5

Как Весна осуждается 3,1 класса ServletContextPropertyPlaceholderConfigurer (см Javadocs для деталей). –

+0

Спасибо. Поэтому ознакомьтесь с инструкциями по устареванию на странице http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/web/context/support/ServletContextPropertyPlaceholderConfigurer.html – Bozho

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