【问题标题】:<context:property-placeholder> properties not accessible to the child (web) context<context:property-placeholder> 子 (web) 上下文无法访问的属性
【发布时间】:2010-09-28 20:07:33
【问题描述】:

一个典型的用例:我有applicationContext.xmldispatcher-servlet.xml。在父上下文 (applicationContext.xml) 中,我有:

 <context:property-placeholder location="classpath:application.properties" />

但是,Web 上下文无法访问由它加载的属性 - 既不是在 xml 中,也不是使用@Value。 (它们只是没有被解析,而是将表达式 (${varName}) 设置为值)

我也通过将&lt;context:property-placeholder&gt; 添加到dispatcher-servlet.xml 来解决这个问题,但我想知道是否:

  1. 这是预期行为
  2. 没有更好的方法将属性公开给子上下文。

【问题讨论】:

    标签: spring spring-mvc


    【解决方案1】:

    是的,这是预期的行为。 &lt;context:property-placeholder&gt; 创建一个 BeanFactoryPostProcessor,它在每个上下文的基础上应用。因此,无论如何,您都需要在子上下文中使用后处理器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-01
      • 2012-09-28
      • 1970-01-01
      • 2011-11-24
      • 2016-06-18
      • 1970-01-01
      • 2013-06-22
      • 1970-01-01
      相关资源
      最近更新 更多